当前位置:  开发笔记 > 编程语言 > 正文

从ListBox中的数据对象获取DataTemplate

如何解决《从ListBox中的数据对象获取DataTemplate》经验,为你挑选了0个好方法。

我有一个ListBoxItemTemplate看起来像这样:


    

Column 是一个简单的类,看起来像这样:

public Column(string name, bool isVisibleInTable)
{
    Name = name;
    IsVisibleInTable = isVisibleInTable;
}

public string Name { get; set; }
public bool IsVisibleInTable { get; set; }

EditableTextBlockUserControl说变成了TextBox双次点击时回百转成TextBlock失落时对焦.它还有一个被称为属性的属性IsInEditMode,默认为false.如果是,TextBox则显示.

问题:
ItemsSouceListBox的是ObservableCollection.我有一个按钮,Column可以为集合添加新的内容.但我的问题是,我希望通过该ButtonIsInEditMode为新添加的EditableTextBlocks 变为真.但我只能在ViewModel中访问.我如何访问集合中指定的? ColumnEditableTextBlockColumnItemsSource

我能想出的唯一解决方案是从中派生一个类Column并为其添加一个属性(例如:name:IsInEditMode)(或者也许是一个包装类.这里是一个类似的答案,建议使用包装类)并绑定到该属性DataTemplate如下:


    

但我不想要这个.我想要一些方法在XAML中执行此操作,而无需派生类和添加不必要的代码.(并且还遵守MVVM规则)

推荐阅读
爱唱歌的郭少文_
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有