国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#實現win10 uwp 右擊浮出窗在點擊位置

2020-01-24 00:58:36
字體:
來源:轉載
供稿:網友

本文主要讓MenuFlyout出現在我們右擊位置。

我們一般使用的MenuFlyout寫在前臺,寫在Button里面,但是可能我們的MenuFlyout顯示的位置和我們想要的不一樣。

通過使用后臺寫ShowAt的方法,我們可以通過e.GetPosition獲得鼠標點擊位置,需要對函數傳入相對的元素,這個元素一般可以用我們點擊使用的元素,也可以使用我們的最外層Grid,這樣我們就可以獲得了鼠標位置,也就可以顯示我們的MenuFlyout在點擊位置。

我們建一個ListView,然后綁定后臺,在我們ListView要右擊顯示我們的浮出,要求我們的浮出在我們點擊位置。

MenuFlyout可以在后臺寫,當然寫在前臺也可以。

我們這寫在后臺,我們可以選擇Placement 顯示在我們元素的位置,但這不是我們鼠標點擊的位置,要顯示我們鼠標點擊的位置,其實也很簡單。我們可以從e.GetPosition(sender as UIElement)獲得鼠標位置,把這個給MenuFlyout我們的浮出顯示在我們鼠標點擊位置

<ListView ItemsSource="{x:Bind View.Str}"><ListView.ItemContainerStyle><Style TargetType="ListViewItem"><Setter Property="HorizontalContentAlignment"Value="Stretch" /><Setter Property="VerticalContentAlignment" Value="Center"></Setter></Style></ListView.ItemContainerStyle><ListView.ItemTemplate><DataTemplate><Grid Background="#FFda2a5c" RightTapped="GridColection_OnRightTapped"><TextBlock Text="{Binding}"></TextBlock></Grid></DataTemplate></ListView.ItemTemplate></ListView>

后臺寫

private void GridColection_OnRightTapped(object sender, RightTappedRoutedEventArgs e){MenuFlyout myFlyout = new MenuFlyout();MenuFlyoutItem firstItem = new MenuFlyoutItem { Text = "OneIt" };MenuFlyoutItem secondItem = new MenuFlyoutItem { Text = "TwoIt" };myFlyout.Items.Add(firstItem);myFlyout.Items.Add(secondItem);//if you only want to show in left or buttom //myFlyout.Placement = FlyoutPlacementMode.Left;FrameworkElement senderElement = sender as FrameworkElement;//the code can show the flyout in your mouse click myFlyout.ShowAt(sender as UIElement, e.GetPosition(sender as UIElement));}

以上所述是小編給大家介紹的C#實現win10 uwp 右擊浮出窗在點擊位置,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宜宾市| 南昌市| 固镇县| 稻城县| 英山县| 驻马店市| 防城港市| 九江县| 清镇市| 桦甸市| 龙里县| 资兴市| 惠东县| 榕江县| 沂水县| 林口县| 南皮县| 修水县| 平和县| 永福县| 威远县| 甘德县| 鹰潭市| 鹤峰县| 清原| 芦山县| 沐川县| 广丰县| 木里| 阳信县| 贞丰县| 广宁县| 凤山县| 平凉市| 滦南县| 嘉义市| 谷城县| 徐闻县| 邛崃市| 英超| 久治县|