事前定義<Menu>
WPF動的メニューアイテム
XAML
に動的一部MenuItems
を追加しようとする:
<Window x:Class="FSBEM.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:FSBEM"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:src="clr-namespace:FSBEM.Models"
mc:Ignorable="d"
Title="BEM" Height="471.997" Width="1186.374"
WindowStartupLocation="CenterScreen"
WindowState="Maximized"
Closing="Window_Closing"
Icon="/Media/Icons/AppL.ico">
<Grid Name="MainGrid" FlowDirection="LeftToRight">
<Menu Name="MainMenu" HorizontalAlignment="Stretch" Height="23 VerticalAlignment="Top" >
<MenuItem Name="M_1" Header="1">
<MenuItem Name="M_2" Header="2"/>
<MenuItem Name="M_3" Header="3" />
</MenuItem>
<MenuItem Name="M_Test" Header="Test"/>
</Menu>
</Grid>
</Window>
Code-Behind
:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
MenuItem mItem1 = new MenuItem();
mItem1.Name = "MenuItem1";
mItem1.Header = "MenuItem1";
M_Test.Items.Add(mItem1);
MenuItem mItem2 = new MenuItem();
mItem2.Name = "MenuItem2";
mItem2.Header = "MenuItem2";
M_Test.Items.Add(mItem2);
}
}
、ここでは結果である:
私は問題が何かを知りません。どんなヘルプ!
UPDATE
コードは罰金コンパイルし、私の上の写真に結果を提供します。
Note
:
私は新しいプロジェクトを作成し、コードをテストしました。それはうまく動作します!あなたのmainwindow.xamlで
完全な最低限の例PLZを作成します。 – Steve
がポストを更新しました。 –
コードはコンパイルされませんが、修正するとうまく動作します。 – vesan