今天做了乙個小測試,意外地將之前的乙個困擾解決了,原問題見《wpf疑難雜症會診》
中的「怎麼才能禁止內容撐大容器?」
以前我是在外側巢狀canvas容器來解決的,這樣實際上就是強制捨去了溢位部分,如果想實現多餘的文字轉變為省略號就辦不到了,而且漸變的結束點也是隨內容擴充套件到容器外面了。
現在改良為下面這段**,就達到了很好的效果:
<
page
xmlns
=""xmlns:x
="">
<
page.resources
>
<
style
targettype
="listboxitem"
>
<
setter
property
="template"
>
<
setter.value
>
<
controltemplate
targettype
="listboxitem"
>
<
border
>
<
border.background
>
<
lineargradientbrush
startpoint
="0,0"
endpoint
="1,0"
>
<
gradientstop
offset
="0"
color
="orangered"
/>
<
gradientstop
offset
="1"
color
="brown"
/>
lineargradientbrush
>
border.background
>
<
textblock
text=""
texttrimming
="characterellipsis"
/>
border
>
controltemplate
>
setter.value
>
setter
>
style
>
<
style
targettype
="listbox"
>
<
setter
property
="template"
>
<
setter.value
>
<
controltemplate
>
<
scrollviewer
borderbrush=""
borderthickness=""
>
<
viewbox
verticalalignment
="top"
>
<
stackpanel
width=""
isitemshost
="true"
/>
viewbox
>
scrollviewer
>
controltemplate
>
setter.value
>
setter
>
style
>
page.resources
>
<
>
<
listbox
width
="120"
height
="220"
margin
="8"
borderbrush
="blue"
borderthickness
="3"
horizontalcontentalignment
="stretch"
>
<
listboxitem
>
1111111111
listboxitem
>
<
listboxitem
>
22222222222222222222
listboxitem
>
<
listboxitem
>
333333333333333333333333333333333333
listboxitem
>
<
listboxitem
>
44444444444444444444444444444444444444444
listboxitem
>
listbox
>
<
listbox
width
="180"
height
="220"
margin
="8"
borderbrush
="green"
borderthickness
="3"
horizontalcontentalignment
="stretch"
>
<
listboxitem
>
1111111111
listboxitem
>
<
listboxitem
>
22222222222222222222
listboxitem
>
<
listboxitem
>
333333333333333333333333333333333333
listboxitem
>
<
listboxitem
>
44444444444444444444444444444444444444444
listboxitem
>
listbox
>
>
page
>
效果:
在這裡我為listbox也重定義了乙個模板,為其listboxitem宿主容器stackpanel設定了寬度繫結,到這裡仍然無法解決問題,過寬的內容還是毫不客氣地超出容器寬度,並帶出橫向滾動條。
然後我又在stackpanel外圍加了乙個viewbox,問題就被神奇地解決了,而我自己還是一頭霧水~~
另外隨之而來了乙個新問題,看我在模板裡設定了邊框的繫結屬性:「」,在listbox的定義處也曾為它們制定過不同顏色的3畫素邊框,但是這不起作用了,怎麼設定都看不到listbox的邊框~不知道是怎麼回事。
誰能解釋一下靈異現象麼~
解決了乙個小問題
原來在debian上使用mplayer w32codecs一直彈出 error could not open required directshow codec drvc.so 的惱人的小問題,今天google了一下,參照fc6下mplayer安裝 執行 發現也有乙個類似libstdc so.5 n...
考考你乙個WPF布局
要建立如圖一樣布局,請問怎麼實現?其實考題本身沒有任何實用價值,只是一種思維的拓展。看似用dockpanel實現,那麼就錯了,因為top button沒有佔據top的全部。實際上是用了很簡單grid實現,如果你能用其他方式實現,歡迎跟帖。code window x class griddemo.co...
解決了乙個連線mysql特別慢的問題
最近使用了一台ucloud的雲主機作為測試伺服器 用了以後發現了乙個問題 假設我的資料庫伺服器為d 我的應用伺服器為a 新的這臺雲主機位c 這三颱機器都不在乙個機房 問題是這樣的 從a鏈結到d,沒有問題,但是從c鏈結到d,非常慢,要將近20秒才有響應 一開始使用a鏈結d沒問題,我認為問題出在c上面 ...