Значение не попадает в ожидаемый диапазон ошибок привязки в RadGridView - PullRequest
1 голос
/ 03 марта 2011

Я следую примеру, опубликованному Telerik, о том, как показать / скрыть столбцы в их элементе управления RadGridView, как показано здесь:

        <StackPanel x:Name="CustomizeGrid" Background="Transparent" Orientation="Horizontal">
        <ListBox ItemsSource="{Binding Columns, ElementName=WorklistGridView}">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <CheckBox Content="{Binding Header}" IsChecked="{Binding IsVisible, Mode=TwoWay}" />
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
        <telerik:RadGridView x:Name="WorklistGridView" AutoGenerateColumns="False" RowIndicatorVisibility="Collapsed" IsReadOnly="True" SelectionMode="Multiple" 
                         CanUserSelect="False" IsSynchronizedWithCurrentItem="False" ItemsSource="{Binding Mode=OneWay}" IsFilteringAllowed="True">
            <telerik:RadGridView.Columns>
                <telerik:GridViewSelectColumn x:Name="Select" IsResizable="False" />
                <telerik:GridViewDataColumn Header="Status" DataMemberBinding="{Binding OrderStatusDescription}"/>
                <telerik:GridViewDataColumn Header="Patient Name" DataMemberBinding="{Binding PatientName}"/>

Но пример не компилируется правильно. Проблема здесь: CheckBox Content = "{Binding Header}"

Основная ошибка в списке: значение не попадает в ожидаемый диапазон.

Я не уверен, почему это происходит. Я постараюсь опубликовать остальную часть ошибки ниже. У кого-нибудь еще есть такая работа, или есть идеи, что случилось?

System.InvalidOperationException

Обнаружено необработанное исключение при попытке визуализации текущего проекта silverlight на поверхности конструктора. Чтобы диагностировать этот сбой, попробуйте запустить проект в обычном браузере, используя среду разработки Silverlight. в Microsoft.Windows.Design.Platform.SilverlightViewProducer.OnUnhandledException (Отправитель объекта, ViewUnhandledExceptionEventArgs e) в Microsoft.Expression.Platform.Silverlight.SilverlightPlatformSpecificView.OnUnhandledException (Отправитель объекта, аргументы ViewUnhandledExceptionEventArgs) в Microsoft.Expression.Platform.Silverlight.Host.SilverlightImageHost. <> c_ DisplayClass1.b _0 (Object o) в System.Windows.Threading.ExceptionWrapper.InternalRealCall (обратный вызов делегата, аргументы объекта, Int32 numArgs) в MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen (Источник объекта, Метод делегата, Аргументы объекта, Int32 numArgs, Делегат catchHandler)

System.ArgumentException Значение не попадает в ожидаемый диапазон. в MS.Internal.XcpImports.CheckHResult (UInt32 ч) в MS.Internal.XcpImports.SetValue (IManagedPeerBase obj, свойство DependencyProperty, DependencyObject doh) в MS.Internal.XcpImports.SetValue (IManagedPeerBase doh, свойство DependencyProperty, Object obj) в System.Windows.DependencyObject.SetObjectValueToCore (DependencyProperty dp, значение объекта) в System.Windows.DependencyObject.SetEffectiveValue (свойство DependencyProperty, EffectiveValueEntry & newEntry, объект newValue) в System.Windows.DependencyObject.UpdateEffectiveValue (свойство DependencyProperty, EffectiveValueEntry oldEntry, EffectiveValueEntry & newEntry, операция ValueOperation) в System.Windows.DependencyObject.RefreshExpression (DependencyProperty dp) в System.Windows.Data.BindingExpression.SendDataToTarget () в System.Windows.Data.BindingExpression.SourceAcquired () в System.Windows.Data.BindingExpression.System.Windows.IDataContextChangedListener.OnDataContextChanged (Отправитель объекта, DataContextChangedEventArgs e) в System.Windows.Data.BindingExpression.DataContextChanged (Отправитель объекта, DataContextChangedEventArgs e) в System.Windows.DataContextChangedEventHandler.Invoke (Отправитель объекта, DataContextChangedEventArgs e) в System.Windows.FrameworkElement.OnDataContextChanged (DataContextChangedEventArgs e) в System.Windows.FrameworkElement.OnTreeParentUpdated (DependencyObject newParent, логический bIsNewParentAlive) в System.Windows.DependencyObject.UpdateTreeParent (IManagedPeer oldParent, IManagedPeer newParent, логический bIsNewParentAlive, логический keepReferenceToParent) в MS.Internal.FrameworkCallbacks.ManagedPeerTreeUpdate (IntPtr oldParentElement, IntPtr parentElement, IntPtr childElement, Байт bIsParentAlive, Байт bKeepReferenceToParent, Байт bCanCreateParent)

...