2011-05-14 24 views
1

例如,我有這個類:如何定義進入ListView的內容?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Web; 
using System.Text.RegularExpressions; 

namespace GameLenseWpf.Entities 
{ 
    public class Game 
    { 
     public Game() 
     { 
      IsValid = true; 
     } 

     //Property used to verify if the model is valid. 
     public bool IsValid { get; set; } 

     private string _releaseDate; 
     public string ReleaseDate 
     { 
      get { return _releaseDate; } 
      set 
      { 
       _releaseDate = Regex.Replace(value, @"\s+", " ").Trim(); 
      } 
     } 

     private string _pageUrl; 
     public string PageUrl 
     { 
      get { return _pageUrl; } 
      set 
      { 
       Uri uri; 
       if (Uri.TryCreate(value, UriKind.RelativeOrAbsolute, out uri)) 
       { 
        _pageUrl = uri.ToString(); 
       } 
       else 
       { 
        IsValid = false; 
       } 
      } 
     } 

     private string _imageUrl; 
     public string ImageUrl 
     { 
      get 
      { 
       return _imageUrl; 
      } 

      set 
      { 
       Uri uri; 
       if (Uri.TryCreate(value, UriKind.RelativeOrAbsolute, out uri)) 
       { 
        _imageUrl = uri.ToString(); 
       } 
       else 
       { 
        IsValid = false; 
       } 
      } 
     } 

     private string _title; 
     public string Title 
     { 
      get 
      { 
       return _title; 
      } 

      set 
      { 
       if (value.Length > 25) 
        _title = value.Substring(0, 25) + "..."; 
       else 
        _title = value; 
      } 
     } 

     private string _synopsis; 
     public string Synopsis 
     { 
      get 
      { 
       return _synopsis; 
      } 

      set 
      { 
       _synopsis = HttpUtility.HtmlDecode(value); 
      } 
     } 
    } 
} 

這是我的XAML:

<ListView Grid.Row="1" Background="#343434"> 

</ListView> 

我怎麼會在這的ListView定義內容的佈局?我正在將一個工作的Windows Forms應用程序移植到WPF。在我的Winforms中,我有一個UserControl可以顯示來自我的POCO的這些信息,並且我會將N個用戶控件添加到Panel中。

感謝您的建議。

回答

2

這應該是一個良好的開端:

<ListView 
     HorizontalAlignment="Stretch" 
     VerticalAlignment="Stretch" 
     Name="listView1"> 
     <ListView.View> 
      <GridView> 
       <GridViewColumn 
        Header="Release Date" 
        DisplayMemberBinding="{Binding Path=ReleaseDate}" /> 
       <GridViewColumn 
        Header="Title" 
        DisplayMemberBinding="{Binding Path=Title}" /> 
      </GridView> 
     </ListView.View> 
    </ListView> 

您可以在代碼分配listView1.ItemsSource

+0

謝謝!現在這個工作已經足夠好了,我可能會學習一些先進的技術。 – 2011-05-14 22:56:49

0

看看的ListView Web服務器控件概述

http://msdn.microsoft.com/en-us/library/bb398790.aspx

+0

什麼?不,這是WPF而不是ASP.Net – 2011-05-14 22:25:26

+0

不過,對於RTFM建議+1! – 2011-05-14 22:26:35

+0

Doh!對不起, – 2011-05-14 22:51:55