System.Windows.Data Error: 26 : ItemTemplate and ItemTemplateSelector are ignored for items already of the ItemsControl's container type RadBreadcrumbBarItem
public
MainWindow()
{
AutomationManager.AutomationMode = AutomationMode.Disabled;
InitializeComponent();
}
Hi,
I am currently having issues with RadGridView's group footer: I am trying to add a button to the footer template which is supposed to trigger a command which in turn needs some info on the group it was triggered from*.
Since (unlike the header) there does not seem to be any info on the group available directly within the GroupFooterTemplate, I am pulling the group info from the parent GridViewGroupFooterRow:
<telerik:GridViewDataColumn [...]>
<telerik:GridViewColumn.GroupFooterTemplate>
<DataTemplate>
<Button Command="{Binding DataContext.ShowFooterGroupCommand, RelativeSource={RelativeSource AncestorType=telerik:RadGridView}}"
CommandParameter="{Binding Group.Key, RelativeSource={RelativeSource AncestorType=telerik:GridViewGroupFooterRow}}" />
</DataTemplate>
</telerik:GridViewColumn.GroupFooterTemplate>
</telerik:GridViewDataColumn>
This is working great as long as the RadGridView does not use Row virtualization. However, when I turn on Row virtualization and scroll around for a bit, the value I get passed as the CommandParameter is more or less random and has nothing to do with the group my button is actually located in.
I attached a small example project (.Net 6 but our app uses 4.8 so I set that as the Framework below) for you to try it yourself. Just scroll around and click the buttons while watching the debug output window. You will see that the groups in the output window will not match the group where you actually clicked the button after some scrolling.
Even when virtualizing, the Group key returned when binding to GridViewGroupFooterRow.Group(.Key) should reliably return the key of the actual group my button is placed in. It would be even better if it was somehow possible to get the group directly, without having to resort to FindAncestor.
Regards
Simon Müller
Hofmann Fördertechnik GmbH
* Basically I am trying to give the user a possibility to add new items to the individual groups and I don't want to add the button to the group header since that makes it too easy to accidentally hit the header's RadToggleButton, collapsing the group.
The designer of VS crashes with a "Key cannot be null" when custom markup extension is used in Style Setter. This reproduces in the sample app attached in the blog (http://www.telerik.com/blogs/bring-office-2016-inspired-style-to-your-app-with-ui-for-wpf) on the TextBlock of the RabRadioButton HeadingStyle (snapshot attached) if you open MainWindow in Designer. Runtime everything works as expected.
Tested with 16.8.4 - works as expected. Updated to 16.9.0 to match the client's setup and managed to reproduce the issue. The issue is reproducible also with the 16.10.0 version of Visual Studio.
The check mark of the RadioButton is misaligned when DPI settings are set to a higher than the default value, e.g. 125%.
The problem can easily be reproduced using the Telerik UI for WPF Demo application:
" Collection was modified; enumeration operation may not execute.'" - The exception is observed when the CLR exceptions are enabled from Visual Studio.
Edit:
The Ellapsed event handler of the Timer is executed in background thread but modifying chart data in a background thread is considered bad practice which is not supported by our component. This is the reason we are declining this bug report.
General solution is to schedule the data update to happen on the UI thread with Dispatcher. When in ViewModel, the following code can be used:
private void OnTimerElapsed(object sender, ElapsedEventArgs e)