DBからの構成に基づいて列を動的に作成するDataGridControlがあります。場合によってはラップテキストが必要です。この背後にあるコードは次のように何とかなりますWPF動的にテキストの折り返しプロパティを設定します。
public class MyDataGridControl : DataGrid
{
...
private void CreateColumns()
{
foreach (var colDef in GridDefinition.Columns)
{
...
dataGridColumn = new DataGridTextColumn() { Binding = new Binding(colDef.Name) };
...
//Wrap
if(WrapColumn != null && columnDefinition.Name.Equals(WrapColumn))
{
dataGridColumn.CellStyle.Setters.Add(new Setter(TextBlock.TextWrappingProperty, TextWrapping.Wrap));
}
...
}
}
...
}
私の問題はTextBlock.TextWrappingPropertyを設定すると動作しないということです。テキストが折り返されず、理由を見つけることができません。上記のグリッドコントロールにはWPFコードはありません。私が紛失しているものはありますか?
ラッピングの代わりにどうなりますか? 「うまくいきません」というのは、あなたが結果を見ているときには非常に具体的に聞こえるが、私は結果を見ていない。 –
「動作しません」は、列の幅がテキストサイズよりも小さい場合、テキストが折り返されないことを意味します。テキストが列をオーバーフローしています。 – Smitis
"オーバーフロー"とは、列の端で端が切り取られていることを意味しますか? –