silverlight 3 datagrid x: проблема с именем

Недавно я улучшил свое решение SL2 до SL3. У меня есть UserControl, содержащий только сетку данных:

<UserControl x:Class="Case.CaseDataGrid_View"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data">


    <data:DataGrid Language="en-GB"
                   AutoGenerateColumns="True"
                   RowHeight="20"
                   ItemsSource="{Binding Cases}"
                   SelectedItem="{Binding SelectedCase, Mode=TwoWay}">

    </data:DataGrid>

</UserControl>

На это ссылается родительская страница:

<UserControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"                       
             mc:Ignorable="d"
             x:Class="eg.WorkManager.UI.Module.CaseEnquiry.CaseEnquiry"
             d:DesignWidth="888"
             d:DesignHeight="480"
             xmlns:case="clr-namespace:Case;assembly=UserControls">

    <ContentControl x:Name="SecurityContext"
                    HorizontalContentAlignment="Stretch"
                    VerticalContentAlignment="Stretch">
        <Grid x:Name="LayoutRoot">
            <case:CaseDataGrid_View Grid.Row="0" 
                                    MinHeight="200" 
                                    Margin="8,8,0,8" 
                                    HorizontalAlignment="Left" 
                                    VerticalAlignment="Top" 
                                    Height="Auto" 
                                    Cases="{Binding Cases}" 
                                    SelectedCase="{Binding SelectedCase, Mode=TwoWay}" 
                                    CustomGridFields="{Binding CustomDataGridFields}"  />

</Grid>
    </ContentControl>
</UserControl>

Когда я добавляю свойство x: Name в свой базовый UserControl, все мои атрибуты в ссылке на элемент управления User начинают выдавать ошибки:

<data:DataGrid x:Name="AnythingItSeems" 
Language="en-GB"
                       AutoGenerateColumns="True"
                       RowHeight="20"
                       ItemsSource="{Binding Cases}"
                       SelectedItem="{Binding SelectedCase, Mode=TwoWay}">

        </data:DataGrid>

Об ошибках сначала сообщается как Неизвестный атрибут Grid.Row, указывающий на XAML на родительской странице:

<case:CaseDataGrid_View Grid.Row="0" 

Когда я удаляю атрибут Grid.Row, следующий выдает аналогичную ошибку.

Это известная проблема / ошибка с сеткой данных? Если нет, то какие идеи вызывает это?

Спасибо, Марк


person Mark Cooper    schedule 23.07.2009    source источник


Ответы (1)


Похоже, что мое обновление SL3 не обновило мои ссылки на сборки SL должным образом (я храню копии сборок SL в исходном коде, поэтому разработчики, которые не работают с C: \ по умолчанию, все равно могут открыть проект и скомпилировать)

person Mark Cooper    schedule 23.07.2009
comment
Я делаю то же самое. Как вы обнаружили, вам действительно нужно обновить эти сборки вручную, когда вы настроите свое дерево исходных текстов таким образом. - person Scott Marlowe; 23.07.2009
comment
На самом деле даже обновление сохраненных сборок не сработало, мне пришлось указать обратно в расположение по умолчанию: c: \ Program Files \ Microsoft SDKs \ Silverlight \ v3.0 \ Libraries \ Client \ :-( - person Mark Cooper; 24.07.2009