c# - Open popup at the location of the button clicked -


i trying create popup opens similar window preview option in windows 8 taskbar. basically, when click or hover on button, opens popup basic information above button. here example. windows 8 taskbar

right now, able open popup @ either extreme left or extreme right side of page, using code below.

<frame x:name="popupframe" horizontalalignment="left" visibility="hidden" height="400" margin="10,10,0,0" grid.row="1" verticalalignment="bottom" width="400" source="/basicapp;component/standingorderpopup.xaml" navigationuivisibility="hidden"/> 

i have 3 different buttons in button bar, cannot set fixed margin. trying set same in code unable absolute position , convert margin property. not sure, if there better solution either.

edit:

tried using popup doesn't open on button click.

        <popup x:name="popupframe" placement="top" placementtarget="{binding elementname=standingorderbutton}" width="400" height="400">         <dockpanel background="#770081a7">             <canvas dockpanel.dock="bottom" x:name="popupbuttonbar" height="50" verticalalignment="bottom">                 <button height="30" width="125" horizontalalignment="right" verticalalignment="center" canvas.top="10" content="close" foreground="white" background="#ff0081a7" borderbrush="white" fontfamily="trebuchet ms" canvas.left="10" />             </canvas>             <label margin="5,0,0,0" horizontalalignment="stretch" verticalalignment="stretch" dockpanel.dock="top" content="standing orders" foreground="#ffffffff"></label>             <grid dockpanel.dock="top">                 <border borderthickness="2" borderbrush="#ffff7a00"></border>                 <richtextbox margin="2" foreground="#ff0081a7" fontfamily="trebuchet ms" isenabled="false"/>             </grid>         </dockpanel>     </popup> 

and here event handler.

    private sub standingorder_click(sender object, e routedeventargs)     popupframe.visibility = windows.visibility.visible end sub 

edit:

never mind. idiot. instead of setting isopen property, set visibility. :(

it works perfectly, although, had copy whole design separate page one. still better nothing. problem if click on else, have write code make sure popup closed.

you can use popup control, coupled it's placement property display popup based on current location of buttons.

<popup placement="top" placementtarget="{binding elementname=yourbutton}" ... /> 

inside popup, can place usercontrol or content element act popup's content.

see here further information on popup placements, , here tutorial on wpf popup controls.


Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -