Пример #1
0
        public static ListViewItem СвойствоКакЭлемнтТаблицы(ColumnHeader КолонкаСвойства, object ОбъектСвойства)
        {
            var ЭлементТаблицы = new ListViewItem
            {
                Tag = ОбъектСвойства,
                UseItemStyleForSubItems = false
            };

            // NULL красным цветом
            var Свойство  = (PropertyInfo)КолонкаСвойства.Tag;
            var КакСтрока = Помощник.СвойствоКакСтрока(Свойство, ОбъектСвойства);

            if (КакСтрока == null)
            {
                string Подпись_NULL   = "<null>";
                var    АтрибутКолонки = Helper.Attr.BaseMethods.GetOne <КолонкаAttribute>(Свойство);
                if (АтрибутКолонки != null)
                {
                    Подпись_NULL = АтрибутКолонки.Подпись_NULL;
                }

                ЭлементТаблицы.Text = Подпись_NULL;
                if (Подпись_NULL == "<null>")
                {
                    ЭлементТаблицы.ForeColor = Color.Red;
                }
            }
            else
            {
                ЭлементТаблицы.Text      = КакСтрока;
                ЭлементТаблицы.ForeColor = SystemColors.WindowText;
            }

            return(ЭлементТаблицы);
        }
Пример #2
0
        public static void ОбновитьПодЭлемнтТаблицы(ListViewItem.ListViewSubItem ПодЭлемнтТаблицы, ColumnHeader КолонкаСвойства, object ОбъектСвойства)
        {
            var Свойство  = (PropertyInfo)КолонкаСвойства.Tag;
            var КакСтрока = Помощник.СвойствоКакСтрока(Свойство, ОбъектСвойства);

            if (КакСтрока == null)
            {
                string Подпись_NULL   = "<null>";
                var    АтрибутКолонки = Helper.Attr.BaseMethods.GetOne <КолонкаAttribute>(Свойство);
                if (АтрибутКолонки != null)
                {
                    Подпись_NULL = АтрибутКолонки.Подпись_NULL;
                }

                ПодЭлемнтТаблицы.Text = Подпись_NULL;
                if (Подпись_NULL == "<null>")
                {
                    ПодЭлемнтТаблицы.ForeColor = Color.Red;
                }
            }
            else
            {
                ПодЭлемнтТаблицы.Text      = КакСтрока;
                ПодЭлемнтТаблицы.ForeColor = SystemColors.WindowText;
            }
        }