Как насчет метода расширения?
Здесь у меня есть метод show или hide. Использование моего CSS-класса скрыто .
public static class HtmlControlExtensions
{
public static void Hide(this HtmlControl ctrl)
{
if (!string.IsNullOrEmpty(ctrl.Attributes["class"]))
{
if (!ctrl.Attributes["class"].Contains("hidden"))
ctrl.Attributes.Add("class", ctrl.Attributes["class"] + " hidden");
}
else
{
ctrl.Attributes.Add("class", "hidden");
}
}
public static void Show(this HtmlControl ctrl)
{
if (!string.IsNullOrEmpty(ctrl.Attributes["class"]))
if (ctrl.Attributes["class"].Contains("hidden"))
ctrl.Attributes.Add("class", ctrl.Attributes["class"].Replace("hidden", ""));
}
}
Затем, когда вы хотите показать или скрыть свой контроль:
myUserControl.Hide();
//... some other code
myUserControl.Show();
Решение Joshua больше не работало на меня, так как я получил ошибку:
Warning: flag --classic ignored for strictly confined snap arduino-mhall119
Однако при использовании devmode вместо этого это хорошо работало:
$ snap install arduino-mhall119 --devmode
Не уверенный, если существуют дальнейшие последствия с devmode хотя..