Исключение дизайнера WPF при попытке изменить пользовательский интерфейс в Visual studio 2008 - PullRequest
2 голосов
/ 30 января 2009

У меня VS2008 с установленным .net 3.5 SP1 на моей машине, я написал одно простое приложение с двумя списками и привязкой к данным, мое приложение компилируется нормально, и я могу его запустить, но когда я пытаюсь открыть конструктор для редактирования элементов управления Я получаю следующую ошибку. Я не понимаю, почему это происходит. Любая идея ... см. Xaml ниже этого сообщения об ошибке

Тип «MS.Internal.Permissions.UserInitiatedNavigationPermission» в сборке «PresentationFramework, версия = 3.0.0.0, культура = нейтральная, PublicKeyToken = 31bf3856ad364e35» не помечена как сериализуемая. в System.Runtime.Serialization.FormatterServices.InternalGetSerializableMembers (тип RuntimeType) в System.Runtime.Serialization.FormatterServices.GetSerializableMembers (Тип типа, контекст StreamingContext) в System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.InitMemberInfo () в System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.InitSerialize (Object obj, ISurrogateSelector surrogateSelector, контекст StreamingContext, SerObjectInfoInit serObjectInfoInit, преобразователь IFormatterConverter, ObjectWriter objectWriter) в System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.Serialize (Object obj, ISurrogateSelector surrogateSelector, контекст StreamingContext, SerObjectInfoInit serObjectInfoInit, преобразователь IFormatterConverter, ObjectWriter objectWriter) в System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Write (WriteObjectInfo objectInfo, NameInfo memberNameInfo, NameInfo typeNameInfo) в System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Serialize (Граф объектов, Заголовок [] inHeaders, __BinaryWriter serWriter, Boolean fCheck) в System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize (поток serializationStream, граф объектов, заголовки [], логический fCheck) в System.Runtime.Remoting.Channels.CrossAppDomainSerializer.SerializeObject (Object obj, MemoryStream stm) в System.AppDomain.Serialize (объект o) в System.AppDomain.MarshalObject (Object o) в System.Threading.CompressedStack.GetDomainCompressedStack (SafeCompressedStackHandle обжаленный стек, индекс Int32) в System.Security.PermissionListSet.CreateCompressedState (CompressedStack cs, CompressedStack innerCS) в System.Threading.CompressedStack.CompleteConstruction (CompressedStack innerCS) в System.Threading.CompressedStack.GetCompressedStack (StackCrawlMark & ​​stackMark) в System.Security.SecurityContext.Capture (ExecutionContext currThreadEC, StackCrawlMark & ​​stackMark) в System.Threading.ExecutionContext.Capture (StackCrawlMark & ​​stackMark) в System.Threading.ExecutionContext.Capture () в System.Windows.Threading.Dispatcher.BeginInvokeImpl (приоритет DispatcherPriority, метод делегата, аргументы объекта, логическое значение isSingleParameter) в System.Windows.Threading.Dispatcher.BeginInvoke (приоритет DispatcherPriority, метод делегата, объектный аргумент) в System.Windows.Input.CommandManager.RaiseRequerySuggested () в System.Windows.Input.CommandManager.InvalidateRequerySuggested () в Microsoft.Windows.Design.Interaction.Tool.TaskCollection.InsertItem (индекс Int32, элемент задачи) at System.Collections.ObjectModel.Collection`1.Add (T item) в Microsoft.Windows.Design.Interaction.SelectionTool..ctor () в MS.Internal.Providers.VSActiveToolProvider.SelectionToolFactory.TryCreateTool [T] (инструмент T &) в MS.Internal.Host.ToolSubsystem.ActivateTool (ToolFactory toolFactory) в MS.Internal.Host.ToolSubsystem..ctor (EditingContext editContext, DesignerContext designerContext) на MS.Internal.Host.Designer.Load () в MS.Internal.Designer.VSDesigner.Load () в MS.Internal.Designer.VSIsolatedDesigner.VSIsolatedView.Load () в MS.Internal.Designer.VSIsolatedDesigner.VSIsolatedDesignerFactory.Load (представление IsolatedView)в MS.Internal.Host.Isolation.IsolatedDesigner.BootstrapProxy.LoadDesigner (фабрика IsolatedDesignerFactory, представление IsolatedView) в MS.Internal.Host.Isolation.IsolatedDesigner.BootstrapProxy.LoadDesigner (фабрика IsolatedDesignerFactory, представление IsolatedView) в MS.Internal.Host.Isolation.IsolatedDesigner.Load () в MS.Internal.Designer.DesignerPane.LoadDesignerView ()

XAML:

<Grid Name="pngrid_Base" Height="auto" Width="auto" Background="Beige">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="auto" MinWidth="221"></ColumnDefinition>
        <ColumnDefinition Width="auto" MinWidth="1" MaxWidth="1"></ColumnDefinition>
        <ColumnDefinition Width="auto"></ColumnDefinition>
    </Grid.ColumnDefinitions>
        <Grid Name="pngrid_BaseForAll" Grid.Column="0" Width="auto" HorizontalAlignment="Left" Background="#FFD8E4F8">
     <Grid.RowDefinitions>
        <RowDefinition Height="30*"/>
        <RowDefinition Height="164*" />
        <RowDefinition Height="35*" />
        <RowDefinition Height="164*" />
        <RowDefinition Height="40*" />
    </Grid.RowDefinitions>
        <ListView  Name="lstview_Unack" Grid.Row="1" Margin="2,0,0,0" SelectionMode="Extended"  LostFocus="lstview_Unack_LostFocus" 
                                                                                                MouseRightButtonDown="lstview_Unack_MouseRightButtonDown">

            <ListView.ItemContainerStyle>
                <Style TargetType="ListViewItem">
                    <Setter Property="IsSelected" Value="{Binding Path=IsSelected, Mode=TwoWay}" />
                </Style>
            </ListView.ItemContainerStyle>
        </ListView>
        <Button Grid.Row="2" HorizontalAlignment="Left" Margin="24,14,0,5" Name="btnFreeze">Freeze</Button>
            <Button Grid.Row="2" HorizontalAlignment="Left" Margin="12,7,0,5" Name="btnAcknowledge" Width="96">Acknowledge</Button>
        <ListView  Name = "lstview_Ack" Grid.Row="3" Margin="2,1,0,0" LostFocus="lstview_Ack_LostFocus" SelectionMode="Extended" MouseRightButtonDown="lstview_Ack_MouseRightButtonDown">
            <ListView.ItemContainerStyle>
                <Style TargetType="ListViewItem">
                    <Setter Property="IsSelected" Value="{Binding Path=IsSelected, Mode=TwoWay}" />                            
                </Style>
            </ListView.ItemContainerStyle>
        </ListView>


        <Button Grid.Row="4" HorizontalAlignment="Left" Margin="16,12,0,7" Name="Clear" Width="78">Clear</Button>
    <TextBox Margin="110,6,32,5" Name="FilterText" TextChanged="FilterText_TextChanged" />
    <ComboBox HorizontalAlignment="Left" Margin="14,5,0,4" Name="comboColumnList" Width="94" />
</Grid>
    <GridSplitter Grid.Column="1" Name="gridSplitter1" Width="2" HorizontalContentAlignment="Center" VerticalContentAlignment="Stretch" HorizontalAlignment="Left" Background="Azure" />
    <Grid Name="pnGridForTreeView" Grid.Column="2" Width="200" Grid.ColumnSpan="2">
        <my:TrinityDeviceTree  x:Name ="m_objDeviceTree" Height="auto" Width="auto">

        </my:TrinityDeviceTree>
    </Grid>

</Grid>

1 Ответ

1 голос
/ 30 января 2009

Я проверил ваш код в VS2008 с .NET 3.5 SP1, и если я удалю объявление для TrinityDeviceTree, он отлично работает с дизайнером. Может быть, вы должны проверить этот UserControl и искать там ошибки. Также попытайтесь очистить свой проект и перестроить, иногда это работает для проблем визуального дизайнера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...