С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
1
.NET 4.x

Можно ли объявить переменную не как тип, а как свойство какого-либо объекта

24.04.2012, 22:04. Показов 2530. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Сегодня впервые сел за c# (по работе нужно)
решил состряпать простенький калькулятор, в событии radioButton1_CheckedChanged пишу код
C#
1
CheckBoxFlag= sender as CheckBox.Tag;
CheckBoxFlag - глобальная переменная типа byte
компилятор ругается
"System.Windows.Forms.Control.Tag" является "свойство", но используется как "тип"
что ему нужно?

Добавлено через 8 минут
P.S.
так тоже пробовал
C#
1
CheckBoxFlag= (sender as CheckBox).Tag;
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.04.2012, 22:04
Ответы с готовыми решениями:

Можно как-то объявить переменную, чтобы к ней можно было обратиться с любой из форм?
У меня такой вопрос) Пишу курсовую работу, состоит из 3 форм, есть пару переменных, которые нужно...

Что такое тип *char и как объявить переменную такого типа?
"Записи в линейном списке содержат ключевое поле типа *char(строка символов).", подскажите, что за...

Можно ли объявить переменную как модуль
Доброго времени суток. Сразу перейду к проблеме. Так вот, есть модуль (самый обычный модуль,...

Как сохранить в переменную само свойство объекта, а не его значение?
var obj = {}; Object.defineProperty(obj, 'prop', { get: function(){ alert('Результат');...

10
9 / 9 / 2
Регистрация: 22.04.2012
Сообщений: 37
24.04.2012, 22:13 2
Может
C#
1
CheckBoxFlag= (sender as RadioButton).Tag;
и еще, не скажите ли что, это за свойство .Tag?
0
Администратор
Эксперт .NET
9616 / 4758 / 761
Регистрация: 17.04.2012
Сообщений: 9,612
Записей в блоге: 14
24.04.2012, 22:23 3
Цитата Сообщение от anonimus Посмотреть сообщение
что ему нужно?
as - это операция приведения типа, после неё должен стоять тип, а CheckBox.Tag - это переменная типа object
Цитата Сообщение от noname_kazan Посмотреть сообщение
и еще, не скажите ли что, это за свойство .Tag?
Это свойство содержит информацию об элементе (Control), если вдруг понадобится вместе с контролом перенести ещё какие-нибудь данные, то Tag тут-как тут
0
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
24.04.2012, 22:33  [ТС] 4
noname_kazan, да тупанул RadioButton не чекбокс, но сути это не поменяло
0
9 / 9 / 2
Регистрация: 22.04.2012
Сообщений: 37
24.04.2012, 22:34 5
А что Вы хотите сделать?
0
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
24.04.2012, 22:36  [ТС] 6
tezaurismosis, ну так как правильно сделать?

Добавлено через 53 секунды
я хочу что бы в переменную CheckBoxFlag попало значение из tag текущего объекта
т.е. у меня стоит одно событие на несколько радиобатонов, что бы дальше в коде понять какой из радиобатонов выбран
0
9 / 9 / 2
Регистрация: 22.04.2012
Сообщений: 37
24.04.2012, 22:46 7
Может тогда по свойству Name определять?
но если хочется пользоваться Tag, то
C#
1
object obj = (sender as RadioButton).Tag;
но он равен null
0
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
24.04.2012, 22:53  [ТС] 8
Цитата Сообщение от noname_kazan Посмотреть сообщение
Может тогда по свойству Name определять?
можно, но хранить под это дело string как-то не камельфо. Если конечно не ответят по поводу tag буду делать через Name

Добавлено через 3 минуты
какой смысл делать свойству таг тип object...
ну вот я в свойствах я каждому радиобатону присвоил значение от 1 до 4 как мне получить это значение по клику на радиобатон?
0
9 / 9 / 2
Регистрация: 22.04.2012
Сообщений: 37
24.04.2012, 22:57 9
C#
1
2
3
4
if ((sender as RadioButton).Checked)
  {
      CheckBoxFlag = Byte.Parse((sender as RadioButton).Tag.ToString());
   }
только не забудь те подписать все радио батоны на событие)
1
2184 / 1254 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
24.04.2012, 23:05  [ТС] 10
noname_kazan, спасибо
0
Эксперт .NET
17791 / 12942 / 3381
Регистрация: 17.09.2011
Сообщений: 21,223
25.04.2012, 09:37 11
Цитата Сообщение от anonimus Посмотреть сообщение
какой смысл делать свойству таг тип object...
Такой, что этому свойству можно присвоить экземпляр любого типа.

Цитата Сообщение от noname_kazan Посмотреть сообщение
CheckBoxFlag = Byte.Parse((sender as RadioButton).Tag.ToString());
Сурово.
C#
1
CheckBoxFlag = (byte)(sender as RadioButton).Tag;
1
25.04.2012, 09:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.04.2012, 09:37
Помогаю со студенческими работами здесь

Как правильно объявить в модуле переменную, тип данных которой описан в основной программе?
Как обратиться из модуля к записе, которая определена в программе? Например, есть такой код...

Как можно загрузить XML с какого-либо сервака себе в asp?
Есть кусок кода: var myXML = Server.CreateObject('Microsoft.XMLDOM'); var myXSL =...

Как можно в классе объявить переменную типа DateTime?
Подскажите, пожалуйста, как можно в классе объявить переменную типа DateTime? Получается: Ошибка...

Как можно получить при открытии какого-либо медиафайла его размер и изображение?
Добрый всем вечер. Подскажите пожалуйста, как можно вытащить при открытии, какого-либо медиа файла,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru