C#實現(xiàn)一鍵清空控件值的示例代碼
場景
在任何一個Form表單的操作頁面或者數(shù)據(jù)臺賬的查詢頁面,基本都會看到一個清除的按鈕,其功能就是用來清除我們需要拋棄的已經(jīng)寫入到控件內(nèi)的數(shù)據(jù)。如果一個個控件來處理的話,想必會非常麻煩,而且系統(tǒng)不單單只是一個頁面,多個頁面要處理起來的話,痛苦程度已經(jīng)是我們不能忍受的了。
需求
所以,綜上場景所述,我們就需要封裝個一鍵清除方法來實現(xiàn),然后將這個方法放入到BaseForm中,其繼承的窗體就可以直接使用了。

開發(fā)環(huán)境
.NET Framework版本:4.5
開發(fā)工具
Visual Studio 2013
實現(xiàn)代碼
/// <summary>
/// 清空查詢條件
/// </summary>
/// <param name="parent">父控件</param>
/// <param name="action">需要特殊處理的事件</param>
public void ClearValue(Control parent, System.Action action = null)
{
foreach (Control c in parent.Controls)
{
if (c.HasChildren)
{
ClearValue(c, action);
}
switch (c.GetType().Name)
{
case "TextBox":
((TextBox)c).Text = "";
break;
case "ComboBox":
((ComboBox)c).Text = "";
break;
case "CheckBox":
((CheckBox)c).Checked = false;
break;
case "RadioButton":
((RadioButton)c).Checked = false;
break;
case "DateTimePicker":
((DateTimePicker)c).Value = DateTime.Now;
break;
}
}
if (action != null)
{
action.Invoke();
}
} private void btn_clear_Click(object sender, EventArgs e)
{
ClearValue(this);
}
private void btn_vip_Click(object sender, EventArgs e)
{
ClearValue(this, () =>
{
checkBox1.Checked = true;
});
}
實現(xiàn)效果

代碼解析
首先是時間控件,沒有清空可以看代碼中的賦值情況,這里是默認又給重新賦值了當前時間,所以沒有做任何改變;然后就是清除控件的方法增加了一個Action參數(shù),這里主要是用來處理一些有其他默認值不需要清除的情況,因為每個頁面每個控件的處理邏輯是不一樣的,為了使這個方法更具有全面性,所以提供了一個可以特殊處理的參數(shù)。
到此這篇關(guān)于C#實現(xiàn)一鍵清空控件值的示例代碼的文章就介紹到這了,更多相關(guān)C#清空控件值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#調(diào)用C++的dll兩種實現(xiàn)方式(托管與非托管)
這篇文章主要介紹了C#調(diào)用C++的dll兩種實現(xiàn)方式(托管與非托管),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08
C#實現(xiàn)獲取多維數(shù)組的行數(shù)與列數(shù)
這篇文章主要為大家詳細介紹了C#如何分別使用Array.GetUpperBound方法和Array.GetLength方法實現(xiàn)獲取多維數(shù)組的行數(shù)與列數(shù),需要的可以參考下2024-02-02
C#結(jié)合數(shù)據(jù)庫實現(xiàn)驗證識別ID卡內(nèi)容的方法
這篇文章主要介紹了C#結(jié)合數(shù)據(jù)庫實現(xiàn)驗證識別ID卡內(nèi)容的方法,非常實用的功能,需要的朋友可以參考下2014-07-07
Unity3D使用陀螺儀控制節(jié)點旋轉(zhuǎn)
這篇文章主要為大家詳細介紹了Unity3D使用陀螺儀控制節(jié)點旋轉(zhuǎn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-11-11

