公司專案有個需求,ui介面支援動態平均分割介面,想了想便想到用listbox來實現,用uniformgrid作為listbox的itemspaneltemplate,通過動態改變uniformgrid的columns屬性,可以動態分割介面。具體實現如下所示:
<
window x:class=
"wpfdemo.mainwindow"
xmlns=
""xmlns:x=
""xmlns:comm=
"clr-namespace:wpfdemo.commoncontrols;assembly=wpfdemo.commoncontrols"
xmlns:local=
"clr-namespace:wpfdemo"
title=
"mainwindow" height=
"350" width=
"525"
>
<
listbox itemssource=
"">
<
uniformgrid columns=
"" isitemshost=
"true"
/>
<
/itemspaneltemplate>
<
/listbox.itemspanel>
<
style targettype=
"">
<
setter property=
"template"
>
<
controltemplate targettype=
"">
<
border horizontalalignment=
"stretch" verticalalignment=
"stretch" background=
"green" borderbrush=
"yellow" borderthickness=
"1">
<
textblock text=
"" horizontalalignment=
"center" verticalalignment=
"center"
/>
<
/border>
<
/controltemplate>
<
/setter.value>
<
/setter>
<
/style>
<
/listbox.itemcontainerstyle>
<
/listbox>
<
/grid>
<
/window>
對應的viewmodel層**:
using system;
using system.collections.generic;
using system.componentmodel;
using system.linq;
using system.runtime.compilerservices;
using system.text;
using system.threading.tasks;
namespace wpfdemo
protected
void
onpropertychanged([
callermembername
]string propertyname =
null)}
public
event
propertychangedeventhandler propertychanged;
}}
using system;
using system.collections.generic;
using system.collections.objectmodel;
using system.linq;
using system.text;
using system.threading.tasks;
using system.windows.threading;
namespace wpfdemo
private
int count =0;
void
timer_tick
(object sender,
eventargs e)",
++count),}
; datasource.
add(temp)
; console.
writeline
(temp.cameraname);if
(count <=6)
else
if(count >
100)
}private
int colums;
public
int colums
set}
private observablecollection datasource;
public observablecollection datasource
set}
}}
軟體執行的效果:
vim的高階使用。
1.常用的ex命令有 w 儲存當前修改 q 在當前行下面插入新行 q 不儲存退出 x 儲存並退出,相當於 qw 執行系統命令 set number 顯示行號 在vim和shell間切換 sh 切換到命令列,ctrl d切換回vim 2.命令模式常用的命令 i 在當前游標處插入文字 o 在當前行下面插...
Tomcat的高階使用
1.虛擬目錄 unpackwars true autodeploy true 乙個虛擬個目錄,多個虛擬目錄 2.tomcat的體系結構 server tomcat容器 service 服務 connector 聯結器 engine 處理服務的請求並響應 host 虛擬主機 context 乙個web...
高階函式的使用
位元組跳動面試時問題 原函式例如fetchdata是乙個非同步函式,嘗試從伺服器端獲取一些資訊並返回乙個promise。寫乙個新的函式可以自動重試一定次數,並且在使用上和原函式沒有區別。這個問題其實不是很難,不過可能是太菜了緊張的原因,當時答得不是很好。不過思路還是很明確的,內部通過閉包來計數,一旦...