Привязка Silverlight 4 Datagrid и ContextMenu к текстовому полю? - PullRequest
0 голосов
/ 04 января 2012

Я просто пытаюсь добавить контекстное меню правой кнопкой мыши для вырезки / копирования / вставки в сетку данных, чтобы вы могли щелкнуть правой кнопкой мыши по каждой ячейке.

У меня нормально отображается меню, проблема в том, чтобы выполнить команду правильно

<DataTemplate x:Key="BasicTitleEditCellTemplate">
     <local:DataContextPropagationGrid>
         <TextBox Text="{Binding Path=Person.Name, Mode=TwoWay}" Background="White"  />
          <toolkit:ContextMenuService.ContextMenu>
             <toolkit:ContextMenu>
                 <toolkit:MenuItem Header="Cut" Click="Test_Method" />
                 <toolkit:MenuItem Header="Copy" />
                 <toolkit:Separator/>
                 <toolkit:MenuItem Header="Paste"/>
             </toolkit:ContextMenu>
         </toolkit:ContextMenuService.ContextMenu>
      </local:DataContextPropagationGrid>
</DataTemplate>

Теперь проблема, с которой мне трудно разобраться, заключается в том, когда пользователь щелкает один из пунктов контекстного меню. Как мне получить текст из текстового поля, на которое он щелкает? Или выделенный текст это скорее?

В WPF всегда казалось, что есть способы получить контроль, с которым связано контекстное меню, и я никак не могу понять в Silverlight, чтобы получить ссылку на это текстовое поле.

Как это обычно делается?

1 Ответ

0 голосов
/ 05 января 2012

Вы не предоставили достаточно информации, как вы используете MVVM или как?

Но это выглядит довольно просто

  <toolkit:MenuItem Header="Cut" CommandParameter="{Binding YourItem}" Command="{Binding YourClickCommand}"/> 
...