gpt4 book ai didi

未应用 WPF 自定义控件模板

转载 作者:行者123 更新时间:2023-12-04 20:57:20 24 4
gpt4 key购买 nike

我确定这个问题或它的衍生问题已经被问过无数次,但我找不到任何可以帮助我解决问题的东西,所以我在问。请随时将我指向我确定存在但我找不到的副本。显然,我不太擅长使用关键字。

我有一个自定义控件,它有自己的资源字典,仅用于定义控件模板。然后将该字典合并到 Generic.xaml 中。

问题是当这个控件出现在 UI 中时,它里面什么都没有。我用过 Snoop找出这个。控件在 UI 中,但它完全是空的。

您会在下面找到我认为导致问题的项目。非常感谢您可以提供的任何帮助或建议。

我的文件夹结构的相关部分是这样的:

My Directory Structure

BasicTemplate.xaml:

<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WPFSpecBuilder.Layouts.Templates">

<Style TargetType="{x:Type local:BasicTemplate}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:BasicTemplate}">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<Grid>
<TextBlock Text="This is a basic template." />
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>

通用.xaml
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Layouts/Templates/XAML/BasicTemplate.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>

最佳答案

尝试这个:

  • 将构建操作设置为 BasicTemplate.xaml 到页面。
  • 在 Generic.xaml 中添加对 BasicTemplate.xaml 的引用:

    ResourceDictionary Source="/WPDSpecBuilder;component/Layouts/Templates/Xaml/BasicTemplate.xaml"

  • 它应该有效。

    关于未应用 WPF 自定义控件模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4173961/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com