【问题标题】:How to save ToolBar Layout?如何保存工具栏布局?
【发布时间】:2014-12-19 17:05:28
【问题描述】:

是的,我已经用谷歌搜索了这个废话 ola。我似乎找不到任何人试图保存用户编辑(如在工具栏托盘内重新定位工具栏)以用于他们的工具栏布局..这要么很简单,我是个白痴,要么很难。.我什至找不到起点,比如我想保存和加载哪些属性?肯定不是 x,y,width 和 height?这只是我应该考虑使用 3rd 方工具的东西吗?

基本上我想做的是在用户在工具栏托盘中移动工具栏后保存工具栏上工具栏的位置。

我的 Xaml 看起来像这样:

<src:BaseWindow x:Class="RPDM.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:c1="http://schemas.componentone.com/winfx/2006/xaml"
    xmlns:src="clr-namespace:RPDM"
    Title="MainWindow" Height="600" Width="800" Loaded="OnLoaded">
<src:BaseWindow.Resources>

<DockPanel x:Name="dockMain">

    <ToolBarTray DockPanel.Dock="Top" x:Name="tbMain">
        <ToolBar  Visibility="{Binding Path=ShowToolBarFile, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay, Converter={StaticResource BoolToVisibilityConverter}}">
            <Button Click="mnuFileNewProject_Click" ToolTip="New Dataflow Project">
                <Image Source="{StaticResource imgNewDataFlow_24}" Width="24" Height="24"/>
            </Button>
            <Button Click="mnuFileNewAutomation_Click" ToolTip="New Automation Project">
                <Image Source="{StaticResource imgNewAutomation_24}" Width="24" Height="24"/>
            </Button>
            <Button Click="mnuFileOpen_Click" ToolTip="Open">
                <Image Source="{StaticResource imgOpen_24}" Width="24" Height="24"/>
            </Button>
            <Button Click="mnuFileSave_Click" ToolTip="Save">
                <Image Source="{StaticResource imgSave_24}" Width="24" Height="24"/>
            </Button>
        </ToolBar>
        <ToolBar  Visibility="{Binding Path=ShowToolBarLayout, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay, Converter={StaticResource BoolToVisibilityConverter}}">
            <Button Click="mnuLayoutZoomIn_Click" ToolTip="Zoom In">
                <Image Source="{StaticResource imgZoomIn_24}" Width="24" Height="24"/>
            </Button>
            <Button Click="mnuLayoutZoomOut_Click" ToolTip="Zoom Out">
                <Image Source="{StaticResource imgZoomOut_24}" Width="24" Height="24"/>
            </Button>
            <Button Click="mnuLayoutZoomToFit_Click" ToolTip="Zoom to Fit">
                <Image Source="{StaticResource imgFitToView_24}" Width="24" Height="24"/>
            </Button>
            <Button Click="btnToggleOrientation_Click" ToolTip="Toggle Orientation">
                <Image Source="{StaticResource imgOrientation_24}" Width="24" Height="24"/>
            </Button>
        </ToolBar>
 </ToolBarTray>
</DockPanel>

【问题讨论】:

  • 好的对不起,我会编辑更多信息。

标签: c# wpf


【解决方案1】:

使用XamlWriter.Save方法序列化逻辑树的根元素,然后通过XamlReader.Load方法重新加载。

我认为这对你有用。有关更多参考,请转到此 msdn 线程:

Trying to programmatically save and restore control layouts

【讨论】:

    猜你喜欢
    • 2016-09-20
    • 2019-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多