PopupMenu 変数= new PopupMenu();作成したら、UICommandをCommandsのAddメソッドで組み込んでいきます。そして、ShowAsyncで表示をします。この辺りの使い方はMessageDialogと同じですが、しかしShowAsyncの引数がちょっと違うので注意が必要です。
《PopupMenu》.ShowAsync(《Point》);引数の「Point」は、位置を示すクラスです。これを利用して、ポップアップメニューを表示する位置を指定するのですね。このPointは、縦横の位置をdoubleで指定してインスタンスを作成します。
Point 変数 = new Point( 横位置 , 縦位置 );では、下に利用例を挙げておきましょう。ボタンを押すと、画面の左上にポップアップメニューが現れます。ここからメニューを選ぶと、それに応じたメッセージがTextBlockに表示されます。UICommandを使いますので、基本的な処理の仕方はMessageDialogと同じですからすぐにわかることでしょう。
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Runtime.InteropServices.WindowsRuntime; using System.Threading.Tasks; using Windows.Foundation; using Windows.Foundation.Collections; using Windows.UI.Popups; using Windows.UI.Xaml; using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls.Primitives; using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Input; using Windows.UI.Xaml.Media; using Windows.UI.Xaml.Navigation; // 空白ページのアイテム テンプレートについては、http://go.microsoft.com/fwlink/?LinkId=234238 を参照してください namespace MyWin8App { /// <summary> /// それ自体で使用できる空白ページまたはフレーム内に移動できる空白ページ。 /// </summary> public sealed partial class MainPage : Page { public MainPage() { this.InitializeComponent(); } private async void button1_click(object sender, RoutedEventArgs e) { string msg = "Hello, " + textbox1.Text + "!"; PopupMenu menu = new PopupMenu(); for(int i = 1;i <= 3;i++) { menu.Commands.Add(new UICommand("No," + i)); } IUICommand cmd = await menu.ShowAsync(new Point(100,100)); textblock1.Text = cmd.Label + "を選んだね。"; } } }
<< 前へ |