gpt4 book ai didi

wpf - 绑定(bind)到结构

转载 作者:行者123 更新时间:2023-12-04 09:27:11 26 4
gpt4 key购买 nike

我正在尝试将 ListView 项绑定(bind)到结构的成员,但我无法让它工作。

结构非常简单:

public struct DeviceTypeInfo
{
public String deviceName;
public int deviceReferenceID;
};

在我的 View 模型中,我保存了这些结构的列表,我想让“deviceName”显示在列表框中。
public class DevicesListViewModel
{
public DevicesListViewModel( )
{

}

public void setListOfAvailableDevices(List<DeviceTypeInfo> devicesList)
{
m_availableDevices = devicesList;
}

public List<DeviceTypeInfo> Devices
{
get { return m_availableDevices; }
}

private List<DeviceTypeInfo> m_availableDevices;
}

我已经尝试了以下方法,但我无法让绑定(bind)工作,我需要使用 relativesource 吗?
    <ListBox Name="DevicesListView" Grid.Column="0" VerticalAlignment="Bottom" HorizontalAlignment="Center" Margin="10"  MinHeight="250" MinWidth="150"  ItemsSource="{Binding Devices}" Width="Auto">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Vertical">
<TextBlock Text="{Binding DeviceTypeInfo.deviceName}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>

最佳答案

您需要在结构属性中创建成员。

public struct DeviceTypeInfo 
{
public String deviceName { get; set; }
public int deviceReferenceID { get; set; }
};
我昨天遇到了类似的情况:P
编辑:哦,是的,还有 like Jesse said ,一旦你把它们变成属性,你会想要设置 INotifyPropertyChanged事件。

关于wpf - 绑定(bind)到结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9216353/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com