2015-05-25 2 views
1

Я создаю приложение UWP, и у меня есть проблема с моим ListView. Я хочу изменить ColumnSpan из TextBlock внутри моего ListView.Изменить ColumnSpan из TextBlock в ListView

    <ListView Grid.Row="1" BorderBrush="#0062AD" BorderThickness="1" ItemsSource="{Binding BusRoutes}" x:Name="Routes1" SelectionMode="None" IsItemClickEnabled="False" Padding="0 10 0 0"> 

        <ListView.ItemTemplate> 
         <DataTemplate> 
          <Grid Width="400"> 
           <Grid.ColumnDefinitions> 
            <ColumnDefinition Width="*"/> 
            <ColumnDefinition Width="*"/> 
           </Grid.ColumnDefinitions> 
           <Grid.RowDefinitions> 
            <RowDefinition Height="*"/> 
           </Grid.RowDefinitions> 
           <TextBlock x:Name="startingPoint" Grid.Row="0" Grid.Column="0" Padding="0 10 0 10" TextAlignment="Center" HorizontalAlignment="Center" Text="{Binding hours}"/> 
           <TextBlock TextAlignment="Center" Grid.Row="0" Grid.Column="1" Padding="0 10 0 10" x:Name="endingPoint" HorizontalAlignment="Center" Text="{Binding hours2}" /> 
          </Grid> 
         </DataTemplate> 
        </ListView.ItemTemplate> 
       </ListView> 

Что я имею в виду, что я хочу, чтобы установить в TextBlox с именем ColumnSpan = начальную точку 2 и сделать TextBlock с именем endingPoint рухнувшего программно. Это возможно?

+0

Я не понял лучшего, но вы можете попробовать 'YourGrid.setColumnSpan (textblock, 2);' –

+0

Вы хотите, чтобы при отображении textblock endPoint ширина начальной точки от имени. и когда конечная точка сбрасывается, ширина начальной точки должна быть полной, то есть она должна отображаться во всей области, где показываются оба текстовых поля. Это вы хотите спросить. или что-нибудь еще? – Pawan

+0

Я хочу установить программные столбцы в startPoint и сделать endPoint невидимым. –

ответ

0

Да, вы можете изменить продолжительность столбца и установить видимость программно с помощью:

endingPoint.Visibility = Visibility.Collapsed; //to make it invisible 
Grid.SetColumnSpan(startingPoint, 2); //to change it the 2 column span 

Надеется, что это помогает.

0

Я думаю, что вы столкнулись с проблемой поиска элементов управления, а не просмотра списка. Так как вы сделали привязку. Лучший способ - создать свойства модели представления для visiblity и columnspan и установить, если программно. Свяжите свойства с вашим xaml. Поскольку у вас уже есть привязки, это должно быть легко сделать.

Смежные вопросы