加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

使用c#自定义WPF ListBox

发布时间:2020-12-16 01:51:08 所属栏目:百科 来源:网络整理
导读:第一步:一个简单的ListBox ListBox Height="95" HorizontalAlignment="Left" Margin="17,0" Name="myList" VerticalAlignment="Top" Width="287" 用那个代码: myList.Items.Add("toto"); 好的,它工作正常. 第二步:我希望每行有两列. 所以我试过了 ListBox
第一步:一个简单的ListBox

<ListBox Height="95" HorizontalAlignment="Left" Margin="17,0" Name="myList" VerticalAlignment="Top" Width="287">

用那个代码:

myList.Items.Add("toto");

好的,它工作正常.

第二步:我希望每行有两列.

所以我试过了

<ListBoxItem Name="my_item">
    <StackPanel Orientation="Horizontal">
        <TextBlock Name="my_item_id"></TextBlock>
        <TextBlock Name="my_item_name"></TextBlock>
    </StackPanel>
</ListBoxItem>

但在我的代码中?

我试过了

my_item_id = "1234";
my_item_name = "toto";
myList.Items.Add(my_item);

但它不起作用……我想我做错了但是如何使它工作?

谢谢.

解决方法

>您应该在项目的 binds到 properties上为ListBox分配一个 ItemTemplate.例如

<ListBox.ItemTemplate>
    <DataTemplate>
        <StackPanel>
            <TextBlock Text="{Binding Id}"/>
            <!-- ... -->

>您添加具有这些属性的项目,例如anonymous objects:

myList.Items.Add(new { Id = "Lorem",... });

另见:Data Templating

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读