日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

silverlight ListBox 多列图片效果

發布時間:2025/1/21 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 silverlight ListBox 多列图片效果 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這個功能之前用wpf寫過一次這次用Silverlight寫一次

這兩種寫法上基本上沒有太大的差別

這個Demo并不完美,只是給大家提供一個思路

源碼:SilverLightListPricture.rar

看一下效果

思路是:

?????? 修改ItemTemplate樣式

???????ItemsPanelTemplate 用WrapPanel顯示

先為image綁定圖片添加一個轉換類

using System; using System.IO; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Ink; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Media.Imaging; using System.Windows.Shapes;namespace SilverLightListPricture {public class ConvertToRecipesImageInfo : IValueConverter{public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture){Stream _stream = value as Stream;BitmapImage bitmap = new BitmapImage();bitmap.SetSource(_stream);return bitmap;}public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture){throw new NotImplementedException();}} }

?

我先把前端代碼分解一下最后給出全部代碼
先看一下是怎么修改listbox的ItemTemplate

是用一個image和一個*button做刪除

<DataTemplate x:Key="ItemTemplate"><Grid Width="200" Height="210" ><Grid.ColumnDefinitions><ColumnDefinition></ColumnDefinition></Grid.ColumnDefinitions><Border BorderThickness="1" BorderBrush="SteelBlue" CornerRadius="3"><Grid Margin="0"><Grid.RowDefinitions><RowDefinition Height="185"></RowDefinition><RowDefinition></RowDefinition></Grid.RowDefinitions><Image Grid.Row="0" Source="{Binding Path=streamsInfo,Converter={StaticResource ImageConverter}}" Margin="0" ></Image><StackPanel Grid.Row="1" HorizontalAlignment="Right" ><Button Width="20" BorderThickness="0" Background="Transparent" Click="Del_PrictureEvent" Name="btn_Del" Tag="{Binding Path=activePricture}" Style="{StaticResource CloseButton}" ></Button></StackPanel></Grid></Border></Grid></DataTemplate>

?


button的樣式

<Style x:Key="CloseButton" TargetType="Button"> <Setter Property="IsTabStop" Value="False"/><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="Button"><Border Background="Transparent"><Canvas><Line X1="4" Y1="4" X2="11" Y2="11" Stroke="#9FA1A0" StrokeThickness="2"></Line><Line X1="11" Y1="4" X2="4" Y2="11" Stroke="#9FA1A0" StrokeThickness="2"></Line></Canvas></Border></ControlTemplate></Setter.Value></Setter></Style>


listbox用的時候要把它的ItemsPanelTemplate改用WrapPanel

重要的是ScrollViewer.HorizontalScrollBarVisibility是定要為Disabled這樣就能防止wrapPanel橫向滾動條出現

<ListBox Grid.Row="0" Margin="5" Width="640" Name="lsPricture" ScrollViewer.VerticalScrollBarVisibility="Visible" ScrollViewer.HorizontalScrollBarVisibility="Disabled"ItemTemplate="{StaticResource ItemTemplate}"><ListBox.ItemsPanel><ItemsPanelTemplate><tools:WrapPanel Width="Auto" Background="#F3FFFF" ></tools:WrapPanel></ItemsPanelTemplate></ListBox.ItemsPanel></ListBox>


完整的前臺代碼

<UserControl x:Class="SilverLightListPricture.ListBoxPrictueDEMO"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"mc:Ignorable="d"xmlns:convertImage="clr-namespace:SilverLightListPricture"xmlns:tools="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Toolkit"><UserControl.Resources><convertImage:ConvertToRecipesImageInfo x:Key="ImageConverter"/><!--關閉按鈕樣式--><Style x:Key="CloseButton" TargetType="Button"><Setter Property="IsTabStop" Value="False"/><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="Button"><Border Background="Transparent"><Canvas><Line X1="4" Y1="4" X2="11" Y2="11" Stroke="#9FA1A0" StrokeThickness="2"></Line><Line X1="11" Y1="4" X2="4" Y2="11" Stroke="#9FA1A0" StrokeThickness="2"></Line></Canvas></Border></ControlTemplate></Setter.Value></Setter></Style><DataTemplate x:Key="ItemTemplate"><Grid Width="200" Height="210" ><Grid.ColumnDefinitions><ColumnDefinition></ColumnDefinition></Grid.ColumnDefinitions><Border BorderThickness="1" BorderBrush="SteelBlue" CornerRadius="3"><Grid Margin="0"><Grid.RowDefinitions><RowDefinition Height="185"></RowDefinition><RowDefinition></RowDefinition></Grid.RowDefinitions><Image Grid.Row="0" Source="{Binding Path=streamsInfo,Converter={StaticResource ImageConverter}}" Margin="0" ></Image><StackPanel Grid.Row="1" HorizontalAlignment="Right" ><Button Width="20" BorderThickness="0" Background="Transparent" Click="Del_PrictureEvent" Name="btn_Del" Tag="{Binding Path=activePricture}" Style="{StaticResource CloseButton}" ></Button></StackPanel></Grid></Border></Grid></DataTemplate></UserControl.Resources><Grid x:Name="LayoutRoot" Background="White"><Grid.RowDefinitions><RowDefinition Height="600"></RowDefinition><RowDefinition Height="73"></RowDefinition></Grid.RowDefinitions><ListBox Grid.Row="0" Margin="5" Width="640" Name="lsPricture" ScrollViewer.VerticalScrollBarVisibility="Visible" ScrollViewer.HorizontalScrollBarVisibility="Disabled"ItemTemplate="{StaticResource ItemTemplate}"><ListBox.ItemsPanel><ItemsPanelTemplate><tools:WrapPanel Width="Auto" Background="#F3FFFF" ></tools:WrapPanel></ItemsPanelTemplate></ListBox.ItemsPanel></ListBox><StackPanel Grid.Row="1" VerticalAlignment="Center" HorizontalAlignment="Center" Orientation="Horizontal"><Button Content="添加 " Width="120" Click="btn_AddEvent"></Button></StackPanel></Grid> </UserControl>

后臺代碼

using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.IO; using System.Linq; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes;namespace SilverLightListPricture {public partial class ListBoxPrictueDEMO : UserControl{ObservableCollection<ImageInfo> SourceCollection = new ObservableCollection<ImageInfo>();public ListBoxPrictueDEMO(){InitializeComponent();bindSource();}//刪除public void Del_PrictureEvent(object sender, RoutedEventArgs e){}void bindSource(){lsPricture.ItemsSource = SourceCollection;}public void btn_AddEvent(object sender, RoutedEventArgs e){OpenFileDialog openFileDialog = new OpenFileDialog();openFileDialog.Filter = "圖片文件(*.jpg,*.png,*.bmp)|*.jpg;*.png;*.bmp|All Files (*.*)|*.*";if (openFileDialog.ShowDialog() == true){FileInfo file = openFileDialog.File;Stream stream = file.OpenRead();SourceCollection.Add(new ImageInfo { streamsInfo = stream, activePricture = "tag" });}}}public class ImageInfo{public string activePricture{get;set;}public Stream streamsInfo{get;set;}} }

?

?好了就說到這

?源碼:SilverLightListPricture.rar

?

?

??????

總結

以上是生活随笔為你收集整理的silverlight ListBox 多列图片效果的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 黄色免费在线看 | 秋霞成人| 成人av免费在线看 | 自拍偷拍第2页 | 久久久久亚洲av无码专区 | 成人免费在线网址 | 中文字幕av影视 | 16—17女人毛片 | 精品亚洲在线 | 国产区在线视频 | jizzjizz美国| www香蕉视频 | 五月天婷婷社区 | 小黄网站在线观看 | a级性生活视频 | 欧美午夜精品一区 | 在线观看av的网址 | 久久久久亚洲色欲AV无码网站 | 免费看女生裸体视频 | 中文字幕日韩欧美在线 | 精品久久久久久久久久久久久久久久久 | 91福利网站 | 国产精品igao视频 | 日韩免费小视频 | 日本激情在线 | 久久视频在线免费观看 | 天天摸日日 | 寡妇高潮一级视频免费看 | 精品久久久久久国产 | 校园春色自拍偷拍 | 国产中文字幕在线 | 懂色av一区二区三区蜜臀 | 亚洲九九九 | 欧美久久久久久久久久久久久久 | 一本色道久久88综合无码 | 欧美丰满少妇人妻精品 | 亚洲国产精彩视频 | 96国产精品 | 国产一区二区小说 | 亚洲日本在线播放 | 激情四虎 | 久久国产色av | 亚洲免费精品视频在线观看 | 日本a级网站 | 无套在线观看 | 亚洲 美腿 欧美 偷拍 | 美女视频三区 | 精品少妇theporn | 一级二级三级黄色片 | 狠狠撸视频 | 黄页网址大全免费观看 | 亚洲精品一二区 | 在线国产中文字幕 | 亚洲影院在线播放 | 日韩视频免费看 | 国产天堂av | av最新在线| 亚洲欧美精品在线观看 | 亚洲精品午夜国产va久久成人 | 午夜播放 | www.com日本 | 青青草原av | 日本a免费| 白峰美羽在线播放 | 日韩精品一区在线播放 | 国产福利合集 | 中国少妇做爰全过程毛片 | 久久网一区二区 | 打美女白嫩屁屁网站 | 韩国三级久久 | 美女久久久久久久久 | 天堂资源网 | 欧美一级艳片视频免费观看 | 在线观看国产免费视频 | 葵司有码中文字幕二三区 | 又黄又湿的网站 | 久久最新免费视频 | 精品偷拍网| 热热热av | 欧美国产日本在线 | 在线免费观看一区二区三区 | 欧美少妇一区二区 | 亚洲免费一区二区 | 26uuu欧美日本| 秋霞av在线| 狠狠草视频 | 国产一区免费 | 999久久久免费精品国产 | av成人在线播放 | 精品九九 | 国产精品高潮呻吟视频 | 天天干天天操天天玩 | 激情自拍偷拍 | 性爱动漫 | 亚洲色图日韩精品 | 亚洲欧美激情一区二区三区 | 中国黄色网址 | 色网在线观看 | 黄色视屏在线免费观看 |