WPF datagrid設定RowHeight後,在RowStyle設定Height會導致顯示異常

WPF datagrid設定RowHeight後,在RowStyle設定Height會導致顯示異常

今天剛好碰到一個DataGrid是要讓不同行之間顯示不同高度,然後會顯示異常

經過一個下午的磕磕碰碰,發現是我的專案中,有在Style中設定RowHeight引起的

浪費了一個下午,總結的思路是下次碰到這種控制項問題

  1. 深呼吸,保持冷靜
  2. 使用最基礎、預設的控制項,或是另外開個專案,跑出需要的效果看看
  3. 如果基礎控制項可以執行,代表是繼承的控制項,程式寫錯或是Style設定有誤
  4. 為了保持其他不變,將需要用到的控制項,回復成預設值

下圖是異常畫面

異常說明

 

 

 

 

 

 

 

這邊碰到兩個問題,一個是無法使用RowHeader調整高度,另一個是DataGridCell的高度異常沒變

第一個解決方式是設定MinHeight不要直接用Height

第二個的解決方式是在需要不同行高度的datagrid將RowHeight設定為NaN,然後在RowStyle或程式中設定MinHeight

RowHeight="NaN" 
正常畫面

有任何改進的意見及問題歡迎傳送到電子郵件

電子郵件:momo16542@gmail.com