WPF中ViewMode中有多个属性和ICommand,在初始化集合ObservableCollection<ViewMode>时,ICommand如何初始化
时间: 2024-02-23 08:01:33 浏览: 67
在WPF中,通常使用RelayCommand来实现ICommand接口。在初始化ObservableCollection<ViewMode>时,你可以将RelayCommand作为ICommand属性的默认值。以下是一个示例代码:
```csharp
public class ViewModel
{
public ICommand MyCommand { get; set; }
public ViewModel()
{
MyCommand = new RelayCommand(DoSomething);
}
private void DoSomething()
{
// Command logic here
}
}
public class MainViewModel
{
public ObservableCollection<ViewModel> ViewModels { get; set; }
public MainViewModel()
{
ViewModels = new ObservableCollection<ViewModel>
{
new ViewModel(),
new ViewModel()
};
}
}
```
在这个示例中,ViewModel包含一个名为MyCommand的ICommand属性,它使用RelayCommand来初始化。在MainViewModel中,我们创建了一个包含两个ViewModel实例的ObservableCollection<ViewModel>。每个ViewModel实例都将使用默认的RelayCommand实例来初始化MyCommand属性。
阅读全文