如何在c#中创建一个类来隐藏窗体中的控件
本文关键字:一个 隐藏 窗体 控件 创建 | 更新日期: 2023-09-27 18:28:07
我有一个名为btnEverage的按钮,3个数字上升,3个组合框和3个文本框。现在,我创建了一个类,使控件可见或不可见。例如,如果我单击btnEverage,则应显示/隐藏3个数字向上、3个组合框和3个文本框。但当我把代码放在类中时,比如numericupdown。Show(),它无法识别表单中的任何控件。如何连接它?
类别:
public void visibile()
{
numericupdown.Show(); //this has error because it does not recognize any numericupdown control.
}
您创建一个完整的类只是为了显示/隐藏一些控件?您可以使用以下方法:
public static void ShowControl(Control c)
{
c.Show();
}
public static void HideControl(Control c)
{
c.Hide();
}
或者,如果你想把它放在一个全新的类中(我不推荐)
public static class ControlsUtility
{
public static void ShowControl(Control c)
{
c.Show();
}
public static void HideControl(Control c)
{
c.Hide();
}
}
希望能有所帮助。
为什么不在客户端使用jQuery呢?从您的示例来看,没有理由在服务器端这样做。在客户端执行此操作可以实现动态控制,而不需要仅仅为了显示或隐藏控件而返回服务器。你甚至可以很容易地得到一些不错的效果。您只需修改附加到所有控件的类即可。我在下面整理了一个样本,我认为这个样本非常不言自明。它允许您只需一个简短的功能,就可以显示和隐藏您用"饮料"类标记的任何项目
http://jsfiddle.net/dMJds/3/
这是代码:
<script>
function hideBeverages() {
$('.beverage').fadeOut(2000);
};
function showBeverages() {
$('.beverage').fadeIn(2000);
};
</script>
<form>
<button id="hideBevs" type="button" onclick="hideBeverages()">Hide Beverages</button>
<button id="showBevs" type="button" onclick="showBeverages()">Show Beverages</button>
<hr />
<div class="beverage">
<h4>Beverage Order</h4>
<input id="qtyMilk" type="text" /><label for="qtyMilk">Milk</label><br />
<input id="qtyCoffee" type="text" /><label for="qtyMilk">Coffee</label>
</div>
<div>
<h4>Foods</h4>
<ul>
<li class="beverage">Tea</li>
<li class="produce">Apples</li>
<li class="beverage">Water</li>
<li class="produce">Oranges</li>
</ul>
</div>
</form>