Provide support for nested properties with null values.
Currently when using the following scenario: null ref exception is throw, when manager is null:
private Person _manager;
public Person Manager
{
get { return _manager; }
set { UpdateValue(ref _manager, value); }
}<telerik:DataGridTextColumn PropertyName="Manager.Name"
HeaderText="Manager"/>
Provide support for null values when nested properties are used in datagrid columns.
Hi Team,
I would like to be able to obtain a reference to a data item in the DataGrid when another UI element (outside of the DataGrid) is dragged and dropped onto it.
This feature request is to add the plumbing necessary to achieve that.
Thank you,
Tony
<telerik:RadDataGrid x:Name="dataGrid" AutomationId="dataGrid" AutoGenerateColumns="False">
<telerik:RadDataGrid.Columns>
<telerik:DataGridTextColumn PropertyName="Country" HeaderText="HighlightedLabel">
<telerik:DataGridTextColumn.CellContentTemplate>
<DataTemplate>
<telerik:RadHighlightLabel UnformattedText="{Binding Country}"
HighlightText="{Binding Source={x:Reference searchEntry}, Path=Text}"
HighlightTextColor="Red"/>
</DataTemplate>
</telerik:DataGridTextColumn.CellContentTemplate>
</telerik:DataGridTextColumn>
</telerik:RadDataGrid.Columns>
</telerik:RadDataGrid>
Actual: The highlighted text doesn't get updated and stays the same.
When the selected item is set initially, the selected style is not applied to the row/cell.
Workaround: You can use a Dispatcher to workaround the issue, code looks as follows:
this.Dispatcher.StartTimer(TimeSpan.FromMilliseconds(200), () =>
{
if (dataGrid.SelectedItem == null)
{
dataGrid.SelectItem(viewModel.PersonCollection.First());
}
return false;
});
Footer is displaced when placing the datagrid into an expander. Issue appears only in certain devices and versions. Tested with Android 12, API 33, Pixel 5 Emulator also with Samsung Galaxy S22 Model: SM=S901U1, One UI Version 4.1, Android Version 12 and Samsung Galaxy Tablet -- Galaxy Tab S7 FE.
In addition, issue cannot be reproduced on Android 9 and Android 11.
Header Text, group header text, do not display some languages characters like Chinese, Thai, etc.
The root reason for this is the fact that the Skia APIs used to draw the text does not support automatic character fallback.
Workaround:
for header text:
<telerik:DataGridTextColumn.HeaderContentTemplate>
<DataTemplate>
<Label Text="your text"></Label>
</DataTemplate>
</telerik:DataGridTextColumn.HeaderContentTemplate>group header text
<telerik:RadDataGrid.GroupHeaderTemplate>
<DataTemplate>
<Label Text="{Binding Group.Key}"/>
</DataTemplate>
</telerik:RadDataGrid.GroupHeaderTemplate>column:
<telerik:DataGridTextColumn HeaderText="Name" >
<telerik:DataGridTextColumn.CellContentTemplate>
<DataTemplate>
<Label Text="{Binding Name}"/>
</DataTemplate>
</telerik:DataGridTextColumn.CellContentTemplate>
</telerik:DataGridTextColumn>
I am using NavigationPages and Dependency Injection (for the Pages and ViewModels) to navigate (not AppShell).
<Grid RowDefinitions="*,100">
<telerik:RadDataGrid x:Name="grdRegisters"
RowHeight="50"
Style="{StaticResource ReadOnlyGridStyle}"
ItemsSource="{Binding Registers}"
SelectionStyle="{StaticResource SelectedRowBackgroundStyle}"
RowBackgroundStyle="{StaticResource RowBackgroundStyle}"
AlternateRowBackgroundStyle="{StaticResource AltRowBackgroundStyle}"
SelectedItem="{Binding SelectedRegister, Mode=TwoWay}">
<telerik:RadDataGrid.Columns>
<telerik:DataGridTemplateColumn HeaderText=""
SizeMode="Fixed"
Width="50">
<telerik:DataGridTemplateColumn.CellContentTemplate>
<DataTemplate x:DataType="RegisterModel">
<Label FontFamily="FASolid"
HorizontalOptions="Center"
VerticalOptions="Center"
Text=""
IsVisible="{Binding IsCurrentRegister, Mode=OneTime}"/>
</DataTemplate>
</telerik:DataGridTemplateColumn.CellContentTemplate>
</telerik:DataGridTemplateColumn>
<telerik:DataGridTemplateColumn HeaderText="Shift Date">
<telerik:DataGridTemplateColumn.CellContentTemplate>
<DataTemplate x:DataType="RegisterModel">
<Label Style="{StaticResource GridCellLabelStyle}"
Text="{Binding Date, Converter={StaticResource ToLocalTimeConverter}, StringFormat='{}{0:d}'}"/>
</DataTemplate>
</telerik:DataGridTemplateColumn.CellContentTemplate>
</telerik:DataGridTemplateColumn>
<telerik:DataGridTemplateColumn HeaderText="Shift Name">
<telerik:DataGridTemplateColumn.CellContentTemplate>
<DataTemplate x:DataType="RegisterModel">
<Label Style="{StaticResource GridCellLabelStyle}"
Text="{Binding Shift.Name}"/>
</DataTemplate>
</telerik:DataGridTemplateColumn.CellContentTemplate>
</telerik:DataGridTemplateColumn>
<telerik:DataGridTemplateColumn HeaderText="Start Time">
<telerik:DataGridTemplateColumn.CellContentTemplate>
<DataTemplate x:DataType="RegisterModel">
<Label Style="{StaticResource GridCellLabelStyle}"
Text="{Binding StartTime, Converter={StaticResource ToLocalTimeConverter}, StringFormat='{}{0:t}'}"/>
</DataTemplate>
</telerik:DataGridTemplateColumn.CellContentTemplate>
</telerik:DataGridTemplateColumn>
<telerik:DataGridTemplateColumn HeaderText="End Time">
<telerik:DataGridTemplateColumn.CellContentTemplate>
<DataTemplate x:DataType="RegisterModel">
<Label Style="{StaticResource GridCellLabelStyle}"
Text="{Binding EndTime, Converter={StaticResource ToLocalTimeConverter}, StringFormat='{}{0:t}'}"/>
</DataTemplate>
</telerik:DataGridTemplateColumn.CellContentTemplate>
</telerik:DataGridTemplateColumn>
</telerik:RadDataGrid.Columns>
</telerik:RadDataGrid>
<HorizontalStackLayout Grid.Row="1">
<Button Text="Resume"
IsEnabled="{Binding SelectedRegister, Converter={StaticResource IsNotNullConverter}}"
Command="{Binding ResumeShiftCommand}"/>
<Button Text="Refresh"
Command="{Binding RefreshCommand}"/>
</HorizontalStackLayout>
</Grid>On initial Refresh, all items are visible in the DataGrid
I navigate forward and then back (PopToRoot), the DataGrid appears empty, although the vertical scroll appears like there are items.
If I tap Refresh, items become visible, but only above the first fold.
If i resize the window vertically, items will appear and disappear depending on the height of the window. (see attached video)
Add text wrap formatting as the normal windows DataGrid control.
Run SDKBrowserMaui example on WinUI
Navigate to DataGrid->LoadOnDemandCategory->LoadOnDemandExmaple
Start scrolling the grid using the scrollbar
Crash occurs on WinUI.
I have been trying to get the DataGrid to work with Maui.Markup and I'm not finding a way to add a DataGrid to my View.
I would have expected I could add a DataGrid to the Children of Grid...but I'm not finding the right cast to allow that to happen, Grid.Children is expecting an IView.
Is this possible and I'm just missing something simple? Thanks!
scrolling is not smooth (items jump up/down when scrolling)
Tested on Samsung S9+ and S10