2017-01-13 38 views
0

誰でも助けてくれますか?私はコンテンツのダイアログボックスでリストビューを表示しようとしています。 最終的には、Bindingsを使用しますが、トラブルシューティングのために、「test」という単語を含むテキストボックスを表示したいだけです。ItemsTemplateはListviewには表示されませんPage.Resources

MainPage.xamlを次に

<Page.Resources> 
    <DataTemplate x:Key="MyUploadsDialogTemplate"> 
     <Grid> 
      <StackPanel> 
       <RelativePanel> 

        <TextBlock x:Name="MyArtistTextBox" Width="150" TextAlignment="Center" Text="TEST" FontSize="12"></TextBlock> 


       </RelativePanel> 
      </StackPanel> 
     </Grid> 
    </DataTemplate> 
</Page.Resources> 

私は私のcontentdialogboxのためのクラスがあります:ここではいくつかのコードです。最後

class MyUploadsDialog 
{ 
    public static ListView MyUploadsListView = new ListView() { Height = 375, Width = 410, Margin = new Thickness(0, 0, 0, 0), Background = new SolidColorBrush(Color.FromArgb(255, 48, 179, 221)) }; 

    public static Panel MyUploadsPanel = new StackPanel(); 
    public static ContentDialog UploadsDialog = new ContentDialog() { Title = "My Music Uploads" }; 

    //Constructor 
    public MyUploadsDialog() 
    { 

     Initialize(); 

    } 
    public void Initialize() 
    { 


     MyUploadsPanel.Children.Add(new TextBlock 
     { 
      Text = "As an artist or label, you will see you music uploads here with some basic info about them.", 
      TextWrapping = TextWrapping.Wrap, 
     }); 



     MyUploadsPanel.Children.Add(MyUploadsListView); 

     UploadsDialog.Content = MyUploadsPanel; 

     UploadsDialog.PrimaryButtonText = "Close"; 
     UploadsDialog.IsPrimaryButtonEnabled = true; 

    } 
} 

が、私は中ListView.ItemTemplateにpage.resourcesのDataTemplateを割り当てる私MainPage()コンストラクタ:

MyUploadsDialog.MyUploadsListView.ItemTemplate = (DataTemplate)Resources["MyUploadsDialogTemplate"]; 

その結果、青いリストビューb ackground ...しかし、私はListBoxの中に "test"という単語を含むTextBoxは表示されません。

エラーや例外は発生しません。DataTemplateコードは表示されません。

助けがあれば助かります。

UPDATE:XAML

<ListView x:Name="NewMusicListView" Height="275" Width="410" Margin="20,0,0,0" RelativePanel.RightOf="MusicCountBox" RelativePanel.Below="Blurb" IsItemClickEnabled="True" SelectionChanged="NewMusicListView_SelectionChanged"> 

        <ListView.HeaderTemplate> 
         <DataTemplate> 
          <Grid> 
           <StackPanel> 
            <RelativePanel> 

             <TextBlock x:Name="ArtistHeader" Padding="25,0,0,0" Width="150" TextAlignment="Center" Text="Artist Name" FontSize="18" Foreground="#ff6600"></TextBlock> 


             <TextBlock x:Name="SongHeader" Padding="25,0,0,0" Width="150" TextAlignment="Center" Text="Song Title" RelativePanel.RightOf="ArtistHeader" FontSize="18" Foreground="#ff6600"></TextBlock> 
            </RelativePanel> 
           </StackPanel> 
          </Grid> 
         </DataTemplate> 
        </ListView.HeaderTemplate> 

        <ListView.ItemTemplate> 
         <DataTemplate> 
          <Grid> 
           <StackPanel> 
           <RelativePanel> 

             <TextBlock x:Name="ArtistTextBox" Width="150" TextAlignment="Center" Text="{Binding Artist}" FontSize="12"></TextBlock> 
             <TextBlock x:Name="SongTextBox" Width="150" TextAlignment="Center" Text="{Binding Song}" RelativePanel.RightOf="ArtistTextBox" FontSize="12"></TextBlock> 


           </RelativePanel> 
          </StackPanel> 
         </Grid> 
        </DataTemplate> 
       </ListView.ItemTemplate> 
       </ListView> 
+0

あなたの 'ListView'にアイテムがありますか? 'ListView.ItemsSource'を割り当てましたか? – Yarik

+0

私はポストを更新しました...アップデートを見てください...私はItemSourceを使用していませんが、もう一度、プログラマチックにリストビューを作成する必要はありません... – Brizzler

+0

'ListView'にはアイテムがありません。 'ItemsSource'を割り当てる必要があります。それ以外の場合は、空になります。 – Yarik

答えて

0

オクラホマの私の典型的なリストビュー、私はそれを考え出しました。あなたの助けを借りてくれてありがとう。私は自分の脳が単に消えてしまったように頑張ってきました。私はItemsSourceを他のリストビューのバインディングに使用しました...だから、これを追加しました。それは働いています。

MyUploadsListView.ItemsSource = MyUploadsList; 

ここで、リストは観測可能なコレクションである。

ご協力いただきありがとうございます。

関連する問題