ComboBox 中的 Caliburn.Micro Enum 绑定

施泰尼

我有一个枚举

    public enum FuelType
{
    Diesel,
    Petrol,
    E10
}

我如何使用 Caliburn.Micro 将它绑定到 Combobox

xml: <ComboBox x:Name="Fuel" Grid.Row="5" Grid.Column="2" Margin="3"/>

和 ModelView 中的属性:

        public FuelType Fuel
    {
        get { return _fuel; }
        set
        {
            _fuel = value;
            NotifyOfPropertyChange(nameof(Fuel));
        }
    }
米尔科·格里克

正确的方法是在 ViewModel 中有一个项目列表和所选项目。Caliburn.Micro 中的约定被设置为解决ItemsSource(using <x:Name>) 和 SelectedItem (using Selected<x:Name>)。

视图模型:

internal class FuelViewModel : Screen
{
    public FuelViewModel()
    {
        FuelType = Enum.GetValues(typeof(Fueltype)).Cast<Fueltype>().ToList();
    }

    private Fueltype selectedFuelType;

    public Fueltype SelectedFuelType
    {
        get => selectedFuelType;
        set => Set(ref selectedFuelType, value);
    }

    public IReadOnlyList<Fueltype> FuelType { get; }
}

看法:

    <ComboBox x:Name="FuelType"/>

编辑:
不做Sybren链接建议的原因是它通过制作 View 控件数据打破了 MVVM 原则。如果您要从简单的枚举支持更改为支持您的视图的数据库,则会中断。使用正确的方法,您可以在不接触视图的情况下更改 ViewModel 中的类型,还可以在不破坏 ViewModel 的情况下交换视图。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Caliburn Micro Datagrid绑定

来自分类Dev

如何在 MVVM Caliburn.Micro 中绑定用户控件?

来自分类Dev

使用 Caliburn.Micro 在 MVVM WPF 中绑定

来自分类Dev

C#/WPF/Caliburn.Micro - Combobox ItemsTemplate 绑定到匿名类型属性

来自分类Dev

如何用caliburn micro动态填充combobox?

来自分类Dev

使用caliburn micro的组合框绑定错误

来自分类Dev

在Caliburn中单击按钮Micro将项目添加到ComboBox

来自分类Dev

在Caliburn中单击按钮Micro将项目添加到ComboBox

来自分类Dev

Caliburn.Micro中的UserControl

来自分类Dev

Caliburn.Micro中的UserControl

来自分类Dev

使用Caliburn.Micro在嵌套列表框中绑定SelectedItem

来自分类Dev

如何使用Caliburn.Micro将容器绑定到MVVM标准中的列表视图控件?

来自分类Dev

Caliburn Micro-将ListBox绑定到集合中对象的属性

来自分类Dev

使用Caliburn.Micro将图像绑定到Uri

来自分类Dev

使用Caliburn Micro将WebView2绑定到ViewModel

来自分类Dev

Caliburn.Micro:网格未绑定/链接到x:Name

来自分类Dev

Caliburn.micro“有时”绑定BindableCollection项目

来自分类Dev

带有 Caliburn.Micro 绑定的 UWP 模板控制,如何?

来自分类Dev

Caliburn.Micro中的WinRT 8.1设置

来自分类Dev

WPF-Caliburn Micro中的ScrollViewer

来自分类Dev

使用Caliburn Micro在WPF中更新DataGrid

来自分类Dev

Caliburn.Micro 中 ActivateItem 之后的操作

来自分类Dev

ComboBox 中的 SelectedItem 绑定

来自分类Dev

Caliburn.Micro ItemsSource不是绑定到当前视图模型,而是绑定到父视图模型

来自分类Dev

将UWP ComboBox ItemsSource绑定到Enum

来自分类Dev

在UWP中将ComboBox绑定到Enum字典

来自分类Dev

使用Caliburn Micro从视图模型中的属性名称获取控制

来自分类Dev

在MVVM(Caliburn micro)中的哪里放置全局变量

来自分类Dev

Caliburn.Micro框架中的控件命名约定

Related 相关文章

  1. 1

    Caliburn Micro Datagrid绑定

  2. 2

    如何在 MVVM Caliburn.Micro 中绑定用户控件?

  3. 3

    使用 Caliburn.Micro 在 MVVM WPF 中绑定

  4. 4

    C#/WPF/Caliburn.Micro - Combobox ItemsTemplate 绑定到匿名类型属性

  5. 5

    如何用caliburn micro动态填充combobox?

  6. 6

    使用caliburn micro的组合框绑定错误

  7. 7

    在Caliburn中单击按钮Micro将项目添加到ComboBox

  8. 8

    在Caliburn中单击按钮Micro将项目添加到ComboBox

  9. 9

    Caliburn.Micro中的UserControl

  10. 10

    Caliburn.Micro中的UserControl

  11. 11

    使用Caliburn.Micro在嵌套列表框中绑定SelectedItem

  12. 12

    如何使用Caliburn.Micro将容器绑定到MVVM标准中的列表视图控件?

  13. 13

    Caliburn Micro-将ListBox绑定到集合中对象的属性

  14. 14

    使用Caliburn.Micro将图像绑定到Uri

  15. 15

    使用Caliburn Micro将WebView2绑定到ViewModel

  16. 16

    Caliburn.Micro:网格未绑定/链接到x:Name

  17. 17

    Caliburn.micro“有时”绑定BindableCollection项目

  18. 18

    带有 Caliburn.Micro 绑定的 UWP 模板控制,如何?

  19. 19

    Caliburn.Micro中的WinRT 8.1设置

  20. 20

    WPF-Caliburn Micro中的ScrollViewer

  21. 21

    使用Caliburn Micro在WPF中更新DataGrid

  22. 22

    Caliburn.Micro 中 ActivateItem 之后的操作

  23. 23

    ComboBox 中的 SelectedItem 绑定

  24. 24

    Caliburn.Micro ItemsSource不是绑定到当前视图模型,而是绑定到父视图模型

  25. 25

    将UWP ComboBox ItemsSource绑定到Enum

  26. 26

    在UWP中将ComboBox绑定到Enum字典

  27. 27

    使用Caliburn Micro从视图模型中的属性名称获取控制

  28. 28

    在MVVM(Caliburn micro)中的哪里放置全局变量

  29. 29

    Caliburn.Micro框架中的控件命名约定

热门标签

归档