Как связать ItemSource внутри DataGrid с элементом вне DataContext, например. ViewModel в Silverlight 4 - PullRequest
1 голос
/ 18 января 2011

У меня есть DataGrid с некоторыми текстовыми столбцами и кнопкой. Я хочу привязать кнопку к команде на ViewModel. Поскольку столбцы находятся в контексте ItemSource, я хочу изменить DataContext для кнопки на что-то вне DataGrid (для модели представления, для доступа к Команде), иначе Silverlight не сможет найти выражение привязки для этой команды в контексте ItemSource.

Вот что я делаю, но мне это не удается. Я не уверен, где я делаю ошибку

<DataGrid >
   ...     
   <Button>
           <i:Interaction.Triggers>
              <i:EventTrigger EventName="Click">
                 <i:InvokeCommandAction Command="{Binding Path=DataContext.CommandToCall, ElementName=DataGridName}" />
              </i:EventTrigger>
           </i:Interaction.Triggers>
     </Button>
   ...
</DataGrid>

Я не получаю никакой ошибки Binding при этом, но я не могу вызвать команду внутри моей ViewModel. Обратите внимание, что это для Silverlight, а не WPF. Спасибо

1 Ответ

1 голос
/ 04 апреля 2011

У меня недавно была такая же проблема. Я использовал Telerik RadGridView, и я нашел обходной путь на их форуме поддержки. Может быть, вы можете сделать что-то подобное.

Вот вопрос , а вот обходной путь .

...