博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WPF ListBox 自动排列
阅读量:5030 次
发布时间:2019-06-12

本文共 2756 字,大约阅读时间需要 9 分钟。

网上一堆ListBox代码,但是不是只能横向就是只能纵向,没办法,只好自己写一个,希望能帮到大家,废话不多说 直接上代码

前台:

<Window x:Class="WpfApplication1.showpifu"

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="showpifu" Height="400" Width="490" Loaded="Window_Loaded">
<Grid>
<StackPanel>
<ListBox x:Name="lstImgs" Height="350">
<ListBox.Template>
<ControlTemplate TargetType="{x:Type ListBox}">
<ScrollViewer VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Disabled">
<WrapPanel Orientation="Horizontal" IsItemsHost="True">
</WrapPanel>
</ScrollViewer>
</ControlTemplate>
</ListBox.Template>
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderThickness="0,0,0,0" BorderBrush="Black" Width="150" Height="100">
<Image MouseMove="Image_MouseMove" MouseLeave="Image_MouseLeave" Stretch="Fill" Source="{Binding Path=FullPath}"/>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</StackPanel>
</Grid>
</Window>

 

后台:

/// <summary>

/// showpifu.xaml 的交互逻辑
/// </summary>
public partial class showpifu : Window
{
public showpifu()
{
InitializeComponent();
}

private void Window_Loaded(object sender, RoutedEventArgs e)

{
DataTable pic = new DataTable();
pic.Columns.Add("FullPath");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
pic.Rows.Add("http://img.kuuke.com/kuuke/doing/201211/20_23_06_46_230.jpg");
this.lstImgs.ItemsSource = pic.DefaultView;
}
private void Image_MouseMove(object sender, System.Windows.Input.MouseEventArgs e)
{
Image image = sender as Image;
Border border = image.Parent as Border;
border.BorderThickness = new Thickness(2, 2, 2, 2);
}

private void Image_MouseLeave(object sender, System.Windows.Input.MouseEventArgs e)

{
Image image = sender as Image;
Border border = image.Parent as Border;
border.BorderThickness = new Thickness(0, 0, 0, 0);
}
}

代码比较简单,我就不说明了,看不懂的再留言问我吧.

这东西看简单,其实真的还是用了很多自己的时间,转载的童鞋,记得保留我的连接http://www.cnblogs.com/linyijia/archive/2013/03/21/2973012.html,不做纯粹的伸手党哦!

转载于:https://www.cnblogs.com/linyijia/archive/2013/03/21/2973012.html

你可能感兴趣的文章
第一次独立上手多线程高并发的项目的心路历程
查看>>
ServiceStack 介绍
查看>>
Centos7下载和安装教程
查看>>
无谓的通宵加班之后的思索
查看>>
S1的小成果:MyKTV系统
查看>>
从setting文件导包
查看>>
编写一个函数isMerge,判断一个字符串str是否可以由其他两个字符串part1和part2“组合”而成...
查看>>
union和union all
查看>>
Github 开源:使用控制器操作 WinForm/WPF 控件( Sheng.Winform.Controls.Controller)
查看>>
PMD使用提醒
查看>>
Codeforces 887D Ratings and Reality Shows
查看>>
论文《A Generative Entity-Mention Model for Linking Entities with Knowledge Base》
查看>>
Linux记录-salt分析
查看>>
Android Studio默认快捷键
查看>>
发布开源库到JCenter所遇到的一些问题记录
查看>>
第七周作业
查看>>
函数式编程与参数
查看>>
flush caches
查看>>
SSAS使用MDX生成脱机的多维数据集CUB文件
查看>>
ACM_hdu1102最小生成树练习
查看>>