我想創建一個具有擴展功能的WPF文本框的類庫(dll文件)。但我想更改TextBox的默認樣式(IsMouseOver屬性觸發器)的一部分。擴展TextBox控件並更改默認樣式的一部分
我創建了一個新的WPF用戶控件庫項目,從中刪除了生成的.XAML和.cs文件,並添加了一個新的類文件。然後我從TextBox類派生,但我不知道如何訪問樣式XAML。
我無法弄清楚如何應該做..
內部項目中,我目前只有這cs文件,並沒有.XAML文件:
namespace CustomControls
{
public class CustomTextBox : TextBox
{
private string customProperty;
public string CustomProperty
{
get { return customProperty; }
set { customProperty = value; }
}
}
}
如果你只是拿文本框,並在設計器上右鍵單擊並選擇編輯模板 - >編輯副本,然後修改你需要在模板內部修改什麼,會不會更容易? – adminSoftDK
是的,但我在後面的代碼中有其他功能,我想包括在自定義文本框中。爲了簡單起見,我沒有將它包括在內。我想要一個可重用的控件,其背後的組合代碼和樣式更改功能。無論如何,你知道它是否可以在像我想要的DLL庫中這樣做? – moonlander
當然可以,你所要做的就是添加新的UserControl,並將其命名爲CustomTextBox(如果這是你想要的),然後用TextBox替換Tag UserControl,從這一點開始,你可以像使用TextBox一樣使用這個TextBox用戶控件,但是你仍然可以使用你的代碼來訪問你的代碼。我發現這比自定義控件更容易。 – adminSoftDK