【发布时间】:2020-04-24 16:31:10
【问题描述】:
我想在我的 Caliburn.Micro 应用程序中从我的视图模型向网格添加(任何)元素(它实际上是一个 Revit 插件,所以不完全是一个应用程序,但应该可以工作)。
我很难理解 MVVM 模型的某些方面并将数据绑定到视图中的元素...
我的视图模型
public class MyViewModel : Screen
{
private Grid _myGrid;
public Grid MyGrid
{
get { return _myGrid; }
set
{
_myGrid = value;
NotifyOfPropertyChange(() => MyGrid);
}
}
public MyViewModel()
{
MyGrid = new Grid();
var label = new Label { Content = "Hello!" };
MyGrid.Children.Add(label); // I know this isn't MVVM but how can I do basically this?
}
}
我的观点
<Window x:Class="MyProject.MyView"
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:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:cal="http://www.caliburnproject.org"
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
xmlns:local="clr-namespace:MyProject.Views"
mc:Ignorable="d">
<Grid x:Name="MyGrid">
<!-- Here goes stuff from view model -->
</Grid>
</Window>
我知道这完全错了...我需要帮助从视图模型中将元素放入我的网格元素中。
【问题讨论】:
标签: c# wpf mvvm caliburn.micro