Silverlight 4.0 Silverlight 4工具包数据网格&x27;s CanUserSortColumns属性不适用于日期时间类型

Silverlight 4.0 Silverlight 4工具包数据网格&x27;s CanUserSortColumns属性不适用于日期时间类型,silverlight-4.0,datagrid,datatemplate,silverlight-toolkit,Silverlight 4.0,Datagrid,Datatemplate,Silverlight Toolkit,我刚刚注意到DataGrid元素的CanUserSortColumns属性在源代码为DateTime类型时似乎不起作用。其他每种类型都会按预期反应 XAML代码片段 <sdk:DataGrid Grid.Row="0" x:Name="FoobarDataGrid" DataContext="foobar" AutoGenerateColumns="False" CanUserReorderColumns="True" CanUserResizeCo

我刚刚注意到
DataGrid
元素的
CanUserSortColumns
属性在源代码为
DateTime
类型时似乎不起作用。其他每种类型都会按预期反应

XAML代码片段

<sdk:DataGrid Grid.Row="0"
    x:Name="FoobarDataGrid"
    DataContext="foobar"
    AutoGenerateColumns="False"
    CanUserReorderColumns="True"
    CanUserResizeColumns="True"
    CanUserSortColumns="True"
    IsReadOnly="True"
    Width="Auto"
    Height="Auto" Margin="8">
    <!-- row/column definitions here, skipped -->
    <sdk:DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <sdk:DatePicker
                IsEnabled="False"
                UseLayoutRounding="True"
                SelectedDate="{Binding SomeWorkingBinding}"
                SelectedDateFormat="Short" />
        </DataTemplate>
    </sdk:DataGridTemplateColumn.CellTemplate>
    <!-- row/column definitions here, skipped --> 
</sdk:DataGrid>


我做错了什么?

对于DataGridTemplateColumn,需要指定排序列(值)的SortMemberPath

<sdk:DataGridTemplateColumn SortMemberPath="SomeWorkingBinding">
  <sdk:DataGridTemplateColumn.CellTemplate>
    <DataTemplate>
        <sdk:DatePicker
            IsEnabled="False"
            UseLayoutRounding="True"
            SelectedDate="{Binding SomeWorkingBinding}"
            SelectedDateFormat="Short" />
    </DataTemplate>
  </sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>

对于DataGridTemplateColumn,您需要指定排序列(值)的SortMemberPath

<sdk:DataGridTemplateColumn SortMemberPath="SomeWorkingBinding">
  <sdk:DataGridTemplateColumn.CellTemplate>
    <DataTemplate>
        <sdk:DatePicker
            IsEnabled="False"
            UseLayoutRounding="True"
            SelectedDate="{Binding SomeWorkingBinding}"
            SelectedDateFormat="Short" />
    </DataTemplate>
  </sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>


成功了,非常感谢您的贡献显然,我们可以按照不同于绑定数据的标准进行排序?很有趣。它成功了,非常感谢你的贡献显然,我们可以按照不同于绑定数据的标准进行排序?有趣。