我是 Visual Studio 的新手,正在从事 Visual Basic 项目。我正在从数据库中将数据添加到列表框,稍后我需要访问它们。我们可以像使用以下 html 一样将额外数据添加到列表框项目吗?
<option name="harry" age="10" value="1">My name is harry</option>
有什么想法吗???
问候
您不会将任何数据(无论这意味着什么)“附加”到 WPF 中的任何 UI 元素,仅仅是因为UI 不是 Data。
如果您正在使用 WPF,您确实需要了解WPF Mentality,这与其他技术中使用的其他方法非常不同。
在 WPF 中,您使用DataBinding将 UI 与数据“绑定”,而不是在 UI 中“放置”或“存储”数据。
这是一个如何ListBox
将 a 绑定到 WPF 中的数据项集合的示例:
XAML:
<ListBox ItemsSource="{Binding MyCollection}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding FirstName}"/>
<TextBlock Text="{Binding LastName}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
视图模型:
public class MyViewModel
{
public ObservableCollection<MyData> MyCollection {get;set;}
//methods to create and populate the collection.
}
数据项:
public class MyData
{
public string LastName {get;set;}
public string FirstName {get;set;}
}
我强烈建议您在开始使用 WPF 编码之前阅读 MVVM。否则你会很快碰壁并在不需要的代码上浪费太多时间。