第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

引用 ResourceDictionaries 和跨多個(gè)程序集的樣式問(wèn)題

引用 ResourceDictionaries 和跨多個(gè)程序集的樣式問(wèn)題

C#
斯蒂芬大帝 2022-06-12 15:05:30
我在跨多個(gè)程序集引用 ResourceDictionaries (RD) 時(shí)遇到問(wèn)題。我目前遇到的具體問(wèn)題是資源和樣式在設(shè)計(jì)時(shí)應(yīng)用于 LoginWindow 而不是在運(yùn)行時(shí)。我還想確定 RD/資源是否以與 DataContext 相同的方式工作。我有點(diǎn)不知所措,我認(rèn)為我缺少一些關(guān)于 WPF 如何處理 RD 和資源等的基本知識(shí)對(duì)于上下文,我有兩個(gè)正在使用的程序集。ControlsAndResources(包含一般控件和資源/樣式)登錄(處理登錄 ui 和邏輯;這包含對(duì) ControlsAndResources 的引用)ControlsAndResources 程序集包含 5 個(gè)簡(jiǎn)單的 RD。這些都放在/Styles/DefaultBase.xaml(包含 FrameworkElement 和控件的基本樣式)Buttons.xaml(從基本控件樣式繼承)Textblocks.xaml(繼承自 Base FrameworkElement 樣式)Textboxes.xaml(從基本控件樣式繼承)Package.xaml(將“Buttons.xaml”、“Textblocks.xaml”和“Textboxes.xaml”打包到單個(gè) RD 中,并包含另一個(gè)為“Button”、“Textblock”和“Textbox”類型創(chuàng)建隱式樣式的 RD )Login 程序集包含 LoginWindow.xaml。(這包含對(duì)“Package.xaml”的引用,其意圖是隱式樣式將應(yīng)用于“LoginWindow”中包含的“Textblock”、“Textbox”和“Button”——它們只是在設(shè)計(jì)時(shí)才這樣做,而不是在運(yùn)行時(shí))我注釋掉了對(duì)“DefaultStyles.xaml”RD 的引用,它實(shí)際上只是封裝了相同的“Package.xaml”RD。出于某種原因,我認(rèn)為解決方案是在同一個(gè)程序集中創(chuàng)建一個(gè)物理 RD,然后從不同的程序集中引用我想要的 RD。沒(méi)有。我對(duì) WPF 相當(dāng)精通和舒適,這個(gè)主題是個(gè)例外,因?yàn)槲也砰_(kāi)始將我的樣式提取到單獨(dú)的 RD。我推遲了它,因?yàn)榕c經(jīng)理打交道似乎很頭疼。到目前為止,我似乎是對(duì)的。但是我決定開(kāi)始這個(gè)是為了真正遵守 DRY 原則。話雖如此,根據(jù)目前的代碼,雖然微不足道,但如果有人有更好地遵守 DRY 原則的建議(或者真的有任何建議),那么我會(huì)全力以赴。謝謝。
查看完整描述

1 回答

?
海綿寶寶撒

TA貢獻(xiàn)1809條經(jīng)驗(yàn) 獲得超8個(gè)贊

中的隱式樣式Package.xaml應(yīng)在合并ResourceDictionary本身中定義。嘗試這個(gè):


<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

                    xmlns:local="clr-namespace:ControlsAndResources.Styles.Default">

    <ResourceDictionary.MergedDictionaries>

        <ResourceDictionary Source="/ControlsAndResources;component/Styles/Default/Base.xaml"/>

        <ResourceDictionary Source="/ControlsAndResources;component/Styles/Default/Buttons.xaml"/>

        <ResourceDictionary Source="/ControlsAndResources;component/Styles/Default/Textblocks.xaml"/>

        <ResourceDictionary Source="/ControlsAndResources;component/Styles/Default/Textboxes.xaml"/>

    </ResourceDictionary.MergedDictionaries>

    <Style TargetType="Button" BasedOn="{StaticResource DefaultButtons}"/>

    <Style TargetType="TextBlock" BasedOn="{StaticResource DefaultTextblocks}"/>

    <Style TargetType="TextBox" BasedOn="{StaticResource DefaultTextboxes}"/>

</ResourceDictionary>


查看完整回答
反對(duì) 回復(fù) 2022-06-12
  • 1 回答
  • 0 關(guān)注
  • 193 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)