Привет всем! Пытаюсь сделать чтото типа ftp клиента и застрял на однои мелочи. не привязываются иконки в списке фаилов, список фалов загрежаю в listview. для GridViewColumn использую шаблон Код | <DataTemplate x:Key="iconCell"> <StackPanel HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Orientation="Horizontal"> <Image Name="img" Source="{Binding ImageItem}" Margin="0,0,4,0"></Image> <TextBlock Name="tb" Text="{Binding FileName}"></TextBlock> </StackPanel> </DataTemplate>
|
Список фаилов формирую так Код | private List<ItemFtp> GetFtpItemList(object folder) { List<ItemFtp> lReturn = new List<ItemFtp>(); List<FtpListItem> lFtpItems = ftp.GetListing(folder.ToString()).ToList();
foreach (FtpListItem item in lFtpItems) { if (item.Type == FtpObjectType.Directory) { lReturn.Add( new ItemFtp(item.Name, item.Modify.ToLongDateString(), null, 0, Properties.Resources.folder, item.Type)); } else if (item.Type == FtpObjectType.File) { string[] file = item.Name.Split('.'); if (file[1].ToUpper() == "ZIP") lReturn.Add( new ItemFtp(item.Name, item.Modify.ToLongDateString(), FormatBytes(item.Size), item.Size, null, item.Type)); } } return lReturn; }
|
класс ItemFtp имеет вид Код | public class ItemFtp { public string FileName { get;set;} public string DateModify { get; set; } public string StrSize { get; set; } public long Size { get; set; } public Image ImageItem { get; set; } public FtpObjectType TypeFtpItem { get; set; }
public ItemFtp(string fileName, string dateModify, string strSize, long size, Image image, FtpObjectType typeItem) { this.FileName = fileName; this.DateModify = dateModify; this.StrSize = strSize; this.Size = size; this.ImageItem = image; this.TypeFtpItem = typeItem; } }
|
Привязку делаю так Код | <ListView Name="lvDirectory" ItemContainerStyle="{StaticResource ResourceKey=StyleRow}" SelectionMode="Single" SelectionChanged="lvDirectory_SelectionChanged"> <ListView.View> <GridView> <GridViewColumn Header="Имя" Width="200" CellTemplate="{StaticResource ResourceKey=iconCell}" /> <GridViewColumn Header="Изменен" DisplayMemberBinding="{Binding Path=DateModify}"/> <GridViewColumn Header="Размер" DisplayMemberBinding="{Binding Path=StrSize}"/> <GridViewColumn Header="Деиствие" CellTemplate="{StaticResource ResourceKey=buttonCell}"/> </GridView> </ListView.View> </ListView>
|
При загрузки имена фаилов биндятся на ура а вот иконки почему - то нет. Если можно подскажите что я сделал не так?
|