【问题标题】:wpf window start up imageswpf 窗口启动图像
【发布时间】:2011-02-19 05:21:15
【问题描述】:

理想情况下,我希望将窗口的资源保留在资源字典中,但在声明 window.resources 部分之前,我一直不知道让它们知道的最佳方法。所以我最终做了类似下面的代码。

有没有办法静态引用背景图像画笔?我怎样才能做得更好?

干杯,
浆果

<Window x:Class="Smack.ConstructionAdmin.Presentation.Wpf.Views.ProjectPicker.ProjectPickerView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
...
    Background="{DynamicResource waveBrush}" 
    Icon="pack://application:,,,/MyAssembly;component/Images/Project_32.png" 
...
    >
<Window.Resources>
    <ImageBrush 
        x:Key="waveBrush" Stretch="Fill" ImageSource="pack://application:,,,/MyAssembly;component\Images\Wave.jpg" 
        />
</Window.Resources>

【问题讨论】:

    标签: wpf resourcedictionary


    【解决方案1】:

    在您的项目 Application.xaml 文件中的 Application.Resources 部分。

    您也可以使用独立的资源文件并将其包含在您的 windows xaml 文件或 Application.xaml 文件中。

    <Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525" Background="{DynamicResource MyBackColor}">
        <Window.Resources>
            <ResourceDictionary Source="Resources\MyResourceDictionary.xaml" />
        </Window.Resources>
        <Grid>
    
        </Grid>
    </Window>
    

    或者

    <Application x:Class="WpfApplication1.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml">
    <Application.Resources>
        <ResourceDictionary Source="Resources\MyResourceDictionary.xaml" />
    </Application.Resources>
    

    【讨论】:

    • 嘿,我想我没有很好地问这个问题。你的第一个 sn-p 是我现在正在做的,当不同的窗口使用不同的资源时我通常想要的。我真的想问我是否可以静态而不是动态地引用资源。我可以吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-05
    • 2011-10-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多