Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Drag WPF Popup control

Tags:

the WPF Popup control is nice, but somewhat limited in my opinion. is there a way to "drag" a popup around when it is opened (like with the DragMove() method of windows)?

can this be done without big problems or do i have to write a substitute for the popup class myself? thanks

like image 981
Joachim Kerschbaumer Avatar asked Oct 21 '08 14:10

Joachim Kerschbaumer


1 Answers

There is no DragMove for PopUp. Just a small work around, there is lot of improvements you can add to this.

<Popup x:Name="pop" IsOpen="True" Height="200" Placement="AbsolutePoint"  Width="200">    <Rectangle Stretch="Fill" Fill="Red"/>             </Popup> 

In the code behind , add this mousemove event

   pop.MouseMove += new MouseEventHandler(pop_MouseMove);     void pop_MouseMove(object sender, MouseEventArgs e)     {         if (e.LeftButton == MouseButtonState.Pressed)         {             pop.PlacementRectangle = new Rect(new Point(e.GetPosition(this).X,                 e.GetPosition(this).Y),new Point(200,200));          }     } 
like image 182
Jobi Joy Avatar answered Sep 23 '22 13:09

Jobi Joy