2014-12-11 3 views
0

Я работаю над приложением, с помощью C# WPF и проблему MVVM.The я хочу показать сводку на кнопку мыши событии в текстовых блоках и TextBlocks внутри ListBox следующим образом:Как показать определенный текстовый блок при нажатии кнопки в WPF?

<ListBox> 
      <TextBlock 
       TextWrapping="Wrap" 
       Height="350" 
       Text="{Binding ShowVlan}" 
      </TextBlock> 
      <TextBlock 
       TextWrapping="Wrap" 
       Height="350" 
       Text="{Binding ShowRouting}"> 
       </TextBlock> 
    </ListBox> 

У меня есть две кнопки, и я хочу, если я нажму 1-ю кнопку, тогда 1-й текстовый блок должен быть отображен, а второй щелчок на кнопке я хочу отобразить второй текстовый блок. Теперь он работает, но фактическая проблема заключается в том, что я хочу отображать на тех же позициях, но они отображаются один за другим .I Я также прилагаю скриншот для лучшего понимания.

+0

Вам действительно нужен listBox? Вы можете иметь и TextBlock в сетке (в той же строке/столбце), и добавлять на них триггеры видимости. –

+0

Я не вижу необходимости в ListBox в такой ситуации! – Usama

ответ

0

Вы можете просто поставить как TextBlock на одной и той же ячейки сетки и установить их видимость истина/ложь на основе выбранной кнопки:

<TextBlock x:Name="ShowVlanTb" Visibility="Hidden" 
       TextWrapping="Wrap" 
       Height="350" 
       Text="{Binding ShowVlan}" Grid.Row=1 Grid.Colomn=2 
      /> 
      <TextBlock x:Name="ShowRoutingTb" Visibility="Hidden" 
       TextWrapping="Wrap" 
       Height="350" 
       Text="{Binding ShowRouting}" Grid.Row=1 Grid.Colomn=2> 
       /> 

и на обработчик события нажатия кнопки установить Visiblity Видимый:

ShowVlanTb.Visibility=Visibility.Visible 
ShowRoutingTb.Visibility=Visibility.Hidden 
+0

Да это сработало спасибо – CodeTheft

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