C#在列表中显示图像和文本

C#在列表中显示图像和文本,c#,listview,C#,Listview,在c#中是否有任何控件可以让我们用图像、格式化文本和图标创建某种列表视图,比如android中的联系人?我发现最接近的是: (一) (二) 在我看来,与android和iPhone相比,这是非常丑陋的,比如: http://www.trymasak.my/sample/iphone2.jpg 我明白你的意思,但很多时候,让一些东西“工作”和“造型”是两件非常非常不同的事情。这在很大程度上还取决于您使用的技术:WinForms(可能是最简单的入门技术,尽管定制可能是一项繁重的工作)、WPF、Si

在c#中是否有任何控件可以让我们用图像、格式化文本和图标创建某种列表视图,比如android中的联系人?我发现最接近的是:

(一)

(二)

在我看来,与android和iPhone相比,这是非常丑陋的,比如:

http://www.trymasak.my/sample/iphone2.jpg

我明白你的意思,但很多时候,让一些东西“工作”和“造型”是两件非常非常不同的事情。这在很大程度上还取决于您使用的技术:WinForms(可能是最简单的入门技术,尽管定制可能是一项繁重的工作)、WPF、Silverlight等等

这是我偶然发现的东西。这也是最近的事。我很确定这将有助于WinForms的快速启动。它被称为ObjectListView:


使用wpf项目。创建StackPanel或Dockpanel,然后在其中添加组件


然后将此面板添加到网格视图的子视图中

好的,如果您不关心是使用WinForms还是WPF,我建议您使用WPF

如果您想要类似于
列表视图
,请尝试使用
数据网格
。这里需要的基本概念是使用
DataTemplate
。在
DataTemplate
中,可以根据需要重新设置单元格内容的样式

这里是一个粗略的例子,我从我的一些代码中提取,但我还没有让它自己编译。这会给你一个良好的开端

<DataGrid ItemsSource="{Binding MyGridData}" AutoGenerateColumns="False" Name="my_datagrid">
    <DataGrid.Columns>
        <DataGridTemplateColumn Header="Column1">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <Image Source={Binding GridCellImage}" />
                        <TextBlock Text="{Binding GridCellText}" />
                    </StackPanel>
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
    </DataGrid.Columns>
</DataGrid>


你能修改你的标签吗?你在使用winforms吗?wpf?silverlight?事实上我不确定。。我只是使用VisualStudio2010。在这件事上没问题,我是。@imin你不知道如果你正在构建什么样的应用程序?!事实上,我正在尝试创建一个运行windows 7的英特尔平板电脑上的应用程序。这并不是对我的问题的准确答案,但它为我指明了正确的方向。。谢谢