WPF中的Trigger如何表示「非」邏輯

2025-03-09 11:30:26 字數 2425 閱讀 3717

1樓:網友

考慮滿足條件時的情形。

例如晌神橋,當乙個 textbox 的 text 屬性 不是 123 時, 其 background 為 red.

那當 text 是 123 時,它的 background 呢。 因此,將 background 預定為 red, 而當 text 為 123 時,設定為常規值。所以,只需考慮 text 為 123 的情形就夠了。

下面的例子說明,當 textbox 的 text 不是 123 時,background 為 red, 常規情形為 主題預定值:

考慮一下,當 text 不是 123 並且也不是 456 時,background 為 red, 其他情形 background 為 blue 時的 trigger 設定。(not equal to 123 or 456,這裡是兩個條件,或者考慮更多條件時 trigger 的設定), 同樣的道理,只要考慮是 123 和 456 的情形就足夠了。

值得注意之處是,如果上面第乙個 setter (background=red), 如果直接在 textbox 的屬性級別就設定:

那麼效果就是,無論何時,它的 background 都是 紅色 (我想這很可能是 rodericksu 提問的原因), 這也是很普遍的 trigger 無法起作用之原因。只要注意下就可解決。

類似這宴猛樣的 情形,它的預定值最好在 style 的 setter 內設定而不是在 元瞎段素標籤的屬性級別上設定。

2樓:網友

目前wpf不支援 非 的判斷。

請用converter實現。

wpf觸發器的觸發條件可以是後臺變數的數值麼,怎麼實現呢?

3樓:網友

可以的比如當控制項高度變為200時設定背景色為紅色。

property="height" value="200"/>

wpf 按鈕屬性觸發器的問題

4樓:網友

原因是你在ispressed時候設定的是button的background,這個值是用來確定button正常顯示時的背景的。因此沒有反映。你可以通過重新定義button的template來解決該問題。

給你個例子。你看看。

儲存成檔案後直接在瀏覽器中就能看到效果。ie、ff都可以---

xmlns:sys="clr-namespace:system;assembly=mscorlib"

mc:ignorable="d"

5樓:網友

button 按下取的是系統預設的顏色。

你想更改 需要把button的系統樣式重寫。

wpf中型別button的事件或屬性中怎麼找不到ispressed?

6樓:mickal小公尺

類似ispressed這種表button狀態的屬性是在button的style裡設定的,而且是trigger裡。

檢視button的狀態屬性的方法如下:(要通過blend軟體喲)用blendbutton的模板。

然後選擇triggers面板,點+property按鈕(即加屬性按鈕)

預設會新增iscancel狀態。

3.點選activated when(當觸發時)下的第二列下拉框,就可以更改狀態了。

7樓:歐笛聖

一般判斷是否有有沒有按下的是用觸發事件來解決的。你可以嘗試一下使用click或mousedown事件來解決!

wpf 寫乙個後臺觸發器的實現

8樓:念亦玉

你這樣做思路是不符合wpf的思路的,業務邏輯和介面分開,你應該使用viewmodel來做。

wpf的multitrigger裡能套datatrigger嗎

9樓:

不能哈,應該想辦法繞過你的這個邏輯,都是and組合,你的這個邏輯應該可以拆開成多個multitrigger

wpf mvvm中邏輯寫在哪個層裡,model層怎麼寫

10樓:陽光的雷咩咩

上面的寫法的好處是屬性變化可以可以通知view

簡寫的情況就無法通知。

sqlhelper在model層,實際上你的類簡單的話model層和modelview可以不分那麼清楚。

wpf:觸發器,提示錯誤資訊,為什麼這樣寫呢? binding裡面的語句是什麼意思

11樓:網友

binding relativesource=, 中relativesource self的含義為繫結的source為控制項自身。

path=(中表示綁哪個屬性。這裡綁errorcontent屬性。

如何實現WPF中在視窗中呼叫另視窗的控制元件DataG

例如有個兩個窗體window1 window2 在window2裡有個name datagrid 的 datagrid 首先在window2的後臺裡把datagrid公開出去public datagrid windatagridset 然後在window1的後臺去例項化window2,在呼叫data...

如何把excel表中不同的sheet表中相同資料彙總

用萬能的sumproduct可以實現。舉例說明。例如有 如圖 按圖中現有四個統計要求,分別進行公式設定。e20輸入公式 sumproduct d2 d18,e2 e18 e21輸入公式 sumproduct d2 d18 500 d2 d18 500 e22輸入公式 sumproduct d2 d1...

如何在mysql的表中的欄位中刪除內容中包含的指定字串

update 表名 來 set 欄位 自名bai concat left 欄位名 du,instr 欄位名zhi,1 right 欄位名,length 欄位名 instr 欄位名,where instr 欄位名,0 and instr 欄位名,instr 欄位名,看得dao懂吧 instr 欄位名,...