Похоже, что это случай попытки моделировать наследование в вашей реляционной базе данных. Сложная тема, обсуждаемая здесь здесь и здесь .
Это звучит , как будто вашему «продавцу, потребителю, продавцу» понадобится много разных атрибутов и отношений. Продавец обычно принадлежит к отделу, имеет цели, связан с продажами. У потребителя есть история покупок, возможно, кредитный лимит и т. Д.
Если это так, я бы предположил, что «наследование таблиц классов» может быть правильным решением.
Это может выглядеть примерно так.
create table user_account
(id int not null,
username varchar not null,
password varchar not null
....);
create table buyer
(id int not null,
user_account_id int not null(fk),
credit_limit float not null,
....);
create table seller
(id int not null,
user_account_id int not null(fk),
sales_target float,
....);
Чтобы ответить на ваш другой вопрос - реляционные базы данных оптимизированы для объединения таблиц. Десятилетия исследований и разработок ушли в эту область, и хорошо спроектированная база данных (с индексами по столбцам, к которым вы присоединяетесь) не будет оказывать заметного влияния на производительность из-за объединений. Из практического опыта запросы с сотнями миллионов записей и десятью или более объединениями выполняются очень быстро на современном оборудовании.
Если вы имеете в виду в конструкторе, вы можете просто щелкнуть свойство BackColor и удалить все, что там есть, а затем нажать войти. Это вернет свойство к его значению по умолчанию.
Если вы имеете в виду код, вы можете установить для свойства BackColor значение Color.Empty , и это будет иметь тот же эффект.
TextBox.ResetBackColor()
По какой-то причине он не появляется в IntelliSense , но он есть и компилируется .
В случае, если нет способа сбросить элемент управления, он вернется к автоматическому изменению цвета фона при включении / отключении Я бы порекомендовал использовать событие UIElement.IsEnabledChanged
, чтобы установить желаемое включение / отключение
фоновые цвета. Я надеюсь, что это полезно!
SystemColors.Window
(обычно) белого цвета. Используйте SystemColors.Control
.
Конечно, вы можете кэшировать используемый цвет, когда вы устанавливаете его на свой собственный, а затем использовать его для сброса. В конце концов, однако, любой подход будет работать.