2017-06-10 40 views
-2

所以我已經在Visual Studio中製作了一個非常簡單的ItemsControl,但沒有顯示出來。我的文本或任何內容都沒有錯誤。這裏的XAML:ItemsControl無法顯示:XAML

 <ItemsControl x:Name="ToDoItemTemplate" Margin="129,168,640,332" AutomationProperties.Name="" DataContext="{Binding RelativeSource={RelativeSource Self}}" Background="#FFB8A91A"> 
     <ItemsControl.ItemTemplate> 
      <DataTemplate> 
       <Grid Background="#FFCDC51E"> 
        <Grid.ColumnDefinitions> 
         <ColumnDefinition Width="*" /> 
         <ColumnDefinition Width="100" /> 
        </Grid.ColumnDefinitions> 
        <TextBlock x:Name="mainTitle" Text="{Binding ItemTitle}" RenderTransformOrigin="0.5,0.5" Margin="842,356,398,257"/> 
       </Grid> 
      </DataTemplate> 
     </ItemsControl.ItemTemplate> 
    </ItemsControl> 

而這裏的C#:

public MainPage() 
    { 
     this.InitializeComponent(); 

     List<ToDoItem> items = new List<ToDoItem>(); 
     items.Add(new ToDoItem() { ItemTitle = NameBox.Text }); 
     items.Add(new ToDoItem() { ItemTitle = "Learn C#" }); 
     items.Add(new ToDoItem() { ItemTitle = "Wash the car" }); 

     ToDoItemTemplate.ItemsSource = items; 
    } 
    public class ToDoItem 
    { 
     public string ItemTitle { get; set; } 
    } 
+1

擺脫這些利潤。您不需要RenderTransformOrigin,因爲沒有RenderTransform。 DataContext沒有意義。也刪除。 –

+0

如果您通過代碼隱藏DataContext加載數據可能會傷害您的@Ed已指示。 – mvermef

+0

@EdPlunkett謝謝!像魅力一樣工作! –

回答

0

擺脫所有那些利潤率。他們會把所有事情弄得一團糟。我發現使用StackPanel,Grid等進行XAML佈局是最簡單和最容易維護的。

因爲沒有RenderTransform,所以您不需要RenderTransformOrigin。

而DataContext沒有意義。我建議你也刪除它。