PDA

View Full Version : سوال: مشکلی با TextBlock.VerticalAlignmentProperty پس از تعریف ارتفاع برای Row در DataGrid



hamed jalili
یک شنبه 29 اردیبهشت 1392, 18:37 عصر
با سلام ،

من با استفاده از کد زیر ، یک Style برای DataGrid تعریف کردم .



Style _Style = new System.Windows.Style(typeof(DataGridCell));

_Style.Setters.Add(new Setter(TextBlock.TextAlignmentProperty, TextAlignment.Center));

_Style.Setters.Add(new Setter(TextBlock.VerticalAlignmentProperty, VerticalAlignment.Center));


و در XAML ارتفاع هر ردیف را 30 تنظیم کردم . نتیجه تصویر زیر شد :
عکس 1 (http://img541.imageshack.us/img541/2240/44835962.jpg)
نمی دونم چرا عکس ها رو نشونه نمیده ، به همین خاطر لینک مستقیم گذاشتم

همانطور که مشخص است ، موقع انتخاب یک Row ، بخش انتخابی فقط متن است ، نه کل Cell . بنابراین من کد بالا را به صورت زیر تغییر دادم



Style _Style = new System.Windows.Style(typeof(DataGridCell));

_Style.Setters.Add(new Setter(TextBlock.TextAlignmentProperty, TextAlignment.Center));

_Style.Setters.Add(new Setter(TextBlock.VerticalAlignmentProperty, VerticalAlignment.Center));

_Style.Setters.Add(new Setter(DataGridCell.HeightProperty, 30.0));


این بار مشکل Highlight حل شد ، ولی همانطور که در تصویر زیر میبینید ، VerticalAlignment صحیح کار نمیکنه !
عکس 2 (http://img824.imageshack.us/img824/7096/73056439.jpg)