WinRT에 익숙하지 않아 바보 같은 질문 인 경우 사과드립니다.WinRT 하드 코딩 된 ListViewItem 대 DataTemplate, 왜 보이지 않습니까?
<ListView x:Name="MyListView1"
Grid.Row="1"
Margin="120,300,0,0"
Width="500"
HorizontalAlignment="Left">
<ListViewItem Background="DodgerBlue">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="200" />
<ColumnDefinition Width="300" />
</Grid.ColumnDefinitions>
<TextBlock Text="hardcoded value 1" Grid.Column="0"></TextBlock>
<TextBlock Text="hardcoded value 2" Grid.Column="1"></TextBlock>
</Grid>
</ListViewItem>
</ListView>
이 내가 그것을보고 원하는 모습이, 당신은 항목을 클릭하는 경우는 전체 행을 선택합니다 : 나는 다음의 ListView를 만들었습니다. 그러나 이것을 DataTemplate으로 옮기면 같은 모양이 아니며 더 이상 전체 행을 클릭 할 수 없습니다. (대상 항목 유형이 ListViewItem 인 ItemContainerStyle을 추가하고 배경을 노란색으로 설정하면 하드 코드 된 ListItem과 크기가 같아지기 때문에 노란색 윤곽선을 클릭하면됩니다.)이 코드는 :
<ListView x:Name="MyListView2"
ItemTemplate="{StaticResource MyTemplate}"
ItemsSource="{Binding MyData}"
Grid.Row="1"
Margin="120,0,0,0"
Width="500"
HorizontalAlignment="Left">
</ListView>
그리고 StandardStyles.xaml에서
: 나는 그들이 보이지 않는 이유를 이해하지 않습니다<DataTemplate x:Key="MyTemplate">
<ListViewItem Background="DodgerBlue">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="200" />
<ColumnDefinition Width="300" />
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding MyDataOne}" Grid.Column="0"></TextBlock>
<TextBlock Text="{Binding MyDataTwo}" Grid.Column="1"></TextBlock>
</Grid>
</ListViewItem>
</DataTemplate>
은/같은 작업 -이 동일한 코드로 채워하지 말아야 할 때를 그것을 묶어 라? 작동하게하려면 어떻게해야합니까?
물론 지금은 완전히 이해가됩니다. 정말 고맙습니다! (늦게 받아 들여서 죄송합니다. 질문을 게시 한 다음날 방학에 갔다가 방금 돌아 왔습니다.) – annelie