【问题标题】:Unable to pass SelectionMode as DependencyProperty for ListView无法将 SelectionMode 作为 ListView 的 DependencyProperty 传递
【发布时间】:2020-09-06 09:33:14
【问题描述】:

我在用户控件中有一个列表视图,并且在页面上调用了用户控件。我想从我的页面决定ListViewSelectionMode 是什么。为了实现这一点,我在这样的用户控件中创建了一个依赖属性

public ListViewSelectionMode SelectionMode
{
    get { return (ListViewSelectionMode)GetValue(SelectionModeProperty); }
    set { SetValue(SelectionModeProperty, value); }
}

public static readonly DependencyProperty SelectionModeProperty =
        DependencyProperty.Register("SelectionMode", typeof(ListViewSelectionMode), typeof(EditMultiSelectComboBoxControl), new PropertyMetadata(null));

XAML

<ListView SelectionMode="{x:Bind lvSelectionMode}"></ListView>

在我的主页上,我正在像这样初始化这个用户控件:

<local:myuc Loaded="UC_Loaded"  ></local:myuc>

后面的代码

private void UC_Loaded(object sender, RoutedEventArgs e)
{
    MultiCombo.SelectionMode = ListViewSelectionMode.Multiple;
}

对我来说一切都很好,但是当我运行项目时,Listview 中的任何项目都不可点击/可选择。我在这里缺少什么?

【问题讨论】:

    标签: c# xaml uwp dependency-properties


    【解决方案1】:

    建议你使用OneWay绑定模式,这样加载后对控件依赖属性的更改仍会反映在UI上

    <ListView SelectionMode="{x:Bind lvSelectionMode, Mode=OneWay}"></ListView>
    

    谢谢。

    【讨论】:

      猜你喜欢
      • 2018-10-21
      • 2011-10-29
      • 1970-01-01
      • 2019-09-24
      • 2021-07-29
      • 2015-01-20
      • 2022-01-26
      • 1970-01-01
      • 2018-04-19
      相关资源
      最近更新 更多