Мне нужно иметь возможность передавать уникальные команды в гиперссылки, созданные из XML в DataGrid.Как преобразовать строку из XML для возврата ICommand?
У меня есть команды в коде за этой работой, если я укажу их непосредственно на гиперссылки таким образом.
<Hyperlink Style="{DynamicResource DataGridCellStyleHyperlink}" Command="{x:Static local:MainWindow.LaunchFirstCommand}">
Мне нужно сделать подобное, но динамически назначать разные команды для каждой гиперссылки внутри ячеек. Все гиперссылки генерируются из XML. Я верю, что мне нужен какой-то конвертер, который это сделает. У меня проблемы с работой. Любые советы высоко ценятся. Заранее спасибо.
Вот код XMLDataProdider, который генерирует контент внутри DataGrid. Я попытался передать значение «команда» как строка:
<XmlDataProvider x:Key="MoreInfoDataGridLocal" XPath="MoreInfoTiles/Servers">
<x:XData>
<MoreInfoTiles xmlns="">
<Servers Name="Test1" Status="003" Name2="Connection 2" Status2="assigned" />
<Servers Name="Test2" Status="Not activated" Name2="Address" Status2="test" />
<Servers Name="Test3" Status="Disabled" Name2="Address" Status2="None" Command="x:Static local:MainWindow.LaunchFirstCommand"/>
</MoreInfoTiles>
</x:XData>
</XmlDataProvider>
Я могу успешно генерировать текстовые строки, но команда ничего не делает. Ниже приведен код, где я подключить его к гиперссылке в DataGrid:
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock >
<Hyperlink Style="{DynamicResource DataGridCellStyleHyperlink}" Command="{Binding [email protected]}" >
<TextBlock Text="{Binding [email protected]}" />
</Hyperlink>
</TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
Мне интересно, есть ли у вас образец этого IValueConverter. Спасибо. – vladc77
Добавлен образец конвертера. –
Это супер круто. Теперь он отлично работает. Большое спасибо! Я очень ценю вашу помощь! – vladc77