WPF全域性視窗錯誤提示框

2021-08-13 19:08:45 字數 1809 閱讀 2421

不管是cs還是bs,在需要使用者提交資料的頁面上,總是要做一些校驗,如果校驗有錯就要給使用者提示,wpf裡自然也避免不了這個問題。一開始,我是在視窗上預留了乙個textblock,並且設定其visibility=collapsed,當校驗有錯的時候,再把這個textblock顯示出來,這樣做是可以實現既定需求,但是這樣卻會影響整個視窗的布局,以下圖舉個例子:

現在這個textblock隱藏在輸入框和搜尋按鈕之間,大家知道visibility=collapsed是不佔布局的,一旦我將visibility設成了visible,搜尋按鈕將會往下移動,這樣的體驗顯然不好;有的同學要說了,那初始時設定visibility=hidden好了,這個是佔布局的,這樣按鈕不會下移,的確,按鈕是不會下移了,但是這裡莫名其妙空白一塊也是影響美觀的吧。

xmlns=""

xmlns:x="">

x:key="customalertwindowtemplete"

targettype="window">

borderbrush="transparent"

borderthickness="12"

x:name="outborder">

blurradius="15"

color="#000000"

opacity=".25"

direction="90"

shadowdepth="1"/>

border.effect>

background="white">

contentpresenter>

adornerdecorator>

x:name="alertborder"

visibility="collapsed"

background="#82000000"

cornerradius="8"

padding="6"

verticalalignment="center"

horizontalalignment="center"

margin="24"

maxwidth="300">

x:name="alerttext"

foreground="white"

verticalalignment="center">

textblock>

x:key="alertstoryboard">

storyboard.targetname="alertborder"

storyboard.targetproperty="visibility"

duration="0:0:4">

keytime="0:0:0" >

visiblevisibility>

discreteobjectkeyframe.value>

discreteobjectkeyframe>

keytime="0:0:4" >

collapsedvisibility>

discreteobjectkeyframe.value>

discreteobjectkeyframe>

objectanimationusingkeyframes.keyframes>

objectanimationusingkeyframes>

storyboard>

border.resources>

border>

grid>

border>

controltemplate>

AngularJs中實現全域性提示框

想給專案中新增乙個全域性提示,發現這本書裡剛好有這個例子 用angularjs開發下一代web應用 就直接拿來用了,下面把 簡單總結一下,同時也發現coding.net和worktile上的全域性提示效果也類似,以後研究一下看有什麼不同也總結到這裡咯 就直接用bs的警告框啦 duang 提示框 co...

無提示框關閉IE視窗

摘自 開發者資源 在不是js開啟的頁面上按window.close 會有提示框,很煩,現在可以不用了,沒有提示框直接關閉視窗。試試下面 試著改變引數會得到其他一些功能 webbrowser.execwb 1,1 開啟 webbrowser.execwb 2,1 關閉現在所有的ie視窗,並開啟乙個新視...

WPF 氣泡提示框的簡單實現

自己挖了乙個大坑,然後苦逼的在碼 重寫樣式 廢話不多說 直接上 1 account gotfocus account gotfocus lostfocus account lostfocus style xl controlattachproperty.label 使用者名稱 foreground ...