如何从 windows 8.1 商店应用中的 ViewModel C# class 将按钮插入网格
How to insert button into Grid from ViewModel C# class in windows 8.1 store app
我可以从代码隐藏文件中将按钮插入网格控件,如
var fElem = new Button();
fElem.Content = "button text";
bgGrid.Children.Add(fElem); // bgGrid defined in xaml
如何从视图模型向网格添加相同的按钮 class?
在 xaml 页面 (xaml.cs) 的代码隐藏中,您需要公开网格
public Grid MyGrid => bgGrid;
然后您可以像这样从您的 ViewModel 访问它:
Frame rootFrame = Window.Current.Content as Frame;
var page = rootFrame.Content as YourPageClassName;
var fElem = new Button();
fElem.Content = "button text";
page.MyGrid.Children.Add(fElem);
然而,这根本不是 MVVM。
我可以从代码隐藏文件中将按钮插入网格控件,如
var fElem = new Button();
fElem.Content = "button text";
bgGrid.Children.Add(fElem); // bgGrid defined in xaml
如何从视图模型向网格添加相同的按钮 class?
在 xaml 页面 (xaml.cs) 的代码隐藏中,您需要公开网格
public Grid MyGrid => bgGrid;
然后您可以像这样从您的 ViewModel 访问它:
Frame rootFrame = Window.Current.Content as Frame;
var page = rootFrame.Content as YourPageClassName;
var fElem = new Button();
fElem.Content = "button text";
page.MyGrid.Children.Add(fElem);
然而,这根本不是 MVVM。