【问题标题】:Change selected row to bold text Silverlight XAML将所选行更改为粗体文本 Silverlight XAML
【发布时间】:2011-06-27 14:29:17
【问题描述】:

我是 Silverlight 开发的新手,我仍在努力了解 MVVM。

我有一个显示结果列表的数据网格,我需要做的是在选择时将行中的文本变为粗体。

我将我的 xaml 页面拆分为引用 viewModel.cs 页面的结构和样式。

我将不胜感激有关如何实现这一目标的任何建议或指示。

感谢您花时间查看我的帖子!

戴夫。

【问题讨论】:

    标签: silverlight xaml


    【解决方案1】:

    你可以试试这样的:

    Xaml:

    <sdk:DataGrid AutoGenerateColumns="True" SelectionChanged="dataGrid1_SelectionChanged" ItemsSource="{Binding .}" Name="dataGrid1">     
    

    后面的代码:

    private void dataGrid1_SelectionChanged(object sender, SelectionChangedEventArgs e)
            {
                foreach (DataGridColumn column in this.dataGrid1.Columns)
                {
                    FrameworkElement element = column.GetCellContent(e.AddedItems[0]);
                    (element as TextBlock).FontWeight = FontWeights.Bold;
    
                    if (e.RemovedItems.Count > 0)
                    {
                        element = column.GetCellContent(e.RemovedItems[0]);
                        (element as TextBlock).FontWeight = FontWeights.Normal;
                    }
    
                } 
            }
    

    希望对你有帮助;)

    【讨论】:

    • 嗨 Slyvain,感谢您的回复!我已更改我的代码以匹配您提供的内容(变量等除外)但是,当我在 foreach 循环中调试应用程序时,它显示列的内容为空?我将列定义为 有什么想法吗?再次感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-27
    • 1970-01-01
    • 2012-09-15
    • 2011-06-15
    • 2018-10-21
    • 2019-04-08
    • 1970-01-01
    相关资源
    最近更新 更多