最简单的方法是实现ButtonClick事件处理程序和调用Window.Close()方法,但是如何通过Command绑定来实现呢?
我有一个AttributeView包含各种属性的视图.还有一个按钮,按下时,它应该为属性设置默认值.我还有一个ViewModelBase类,它是我所有ViewModel的基类.问题是我似乎无法使用WPF将命令绑定到命令.
我试过这个,但它没有做任何事情:
<Button Command="{Binding DataInitialization}" Content="{x:Static localProperties:Resources.BtnReinitializeData}"></Button>
Run Code Online (Sandbox Code Playgroud)
该命令是在(如下ViewModelBase)中定义的:
public CommandBase DataInitialization { get; protected set; }
Run Code Online (Sandbox Code Playgroud)
在应用程序启动时,为该命令创建一个新实例:
DataInitialization = new DataInitializationCommand()
Run Code Online (Sandbox Code Playgroud)
但是,WPF绑定似乎没有"找到"命令(按下按钮什么都不做).当前视图中使用的ViewModel派生自ViewModelBase.我还能尝试什么(我对WPF很新,所以这可能是一个非常简单的问题)?
我正在用MVVM(C#)编写程序并XAML使用Caliburn.Micro库。
我想知道如何将 Listview 控件与某些容器(例如List<Type>,IEnumerable<Type>或ObservableCollection< Type>?
<ListView Grid.Column="1" x:Name="FileListView" ItemsSource="{Binding ListOfFile}" VerticalAlignment="Stretch" HorizontalContentAlignment="Stretch" Margin="10" Background="#FFE6EEF7">
<ListView.View>
<GridView>
<GridViewColumn Header="Status" Width="100" />
<GridViewColumn Header="Name" Width="85" />
<GridViewColumn Header="Size" Width="100" />
<GridViewColumn Header="System Type" Width="100" />
<GridViewColumn Header="Email Count" Width="100" />
<GridViewColumn Header="Info Count" Width="100" />
</GridView>
</ListView.View>
</ListView>
Run Code Online (Sandbox Code Playgroud)
namespace ListBox_CaliburnMicro
{
public class MainViewModel : Screen
{
// ...
public MainViewModel()
{
}
public class FileItem
{
public …Run Code Online (Sandbox Code Playgroud)