StableVersion4.3/HL_FristAidPlatform_Public/ClearControl.cs

66 lines
2.6 KiB
C#

using DevExpress.XtraEditors;
using System.Windows.Forms;
using ComboBox = DevExpress.XtraEditors.ComboBox;
namespace HL_FristAidPlatform_Public
{
public class ClearControl
{
public static void ClearControlValue(Control parContainer)
{
for (int index = 0; index < parContainer.Controls.Count; index++)
{
// 如果是容器内部控件,则递归调用自己
if (parContainer.Controls[index].HasChildren)
{
ClearControlValue(parContainer.Controls[index]);
}
else
{
switch (parContainer.Controls[index].GetType().Name)
{
case "TextBox":
(parContainer.Controls[index] as TextBox).Text = "";
break;
case "RadioGroup":
(parContainer.Controls[index] as RadioGroup).SelectedIndex = -1;
break;
case "CheckedListBoxControl":
//(parContainer.Controls[index] as CheckedListBoxControl)
for (int i = 0; i < (parContainer.Controls[index] as CheckedListBoxControl).Items.Count; i++)
{
if ((parContainer.Controls[index] as CheckedListBoxControl).GetItemChecked(i))
{
(parContainer.Controls[index] as CheckedListBoxControl).Items.RemoveAt(i);
}
}
break;
case "TimeControl":
(parContainer.Controls[index] as TimeControl).TimeValue = "";
break;
case "ComboBox":
(parContainer.Controls[index] as ComboBox).Text = "";
(parContainer.Controls[index] as ComboBox).SelectedIndex = -1;
break;
case "DataGridView":
(parContainer.Controls[index] as DataGridView).DataSource = null;
break;
case "ListBox":
(parContainer.Controls[index] as ListBox).Items.Clear();
break;
case "DateTimePicker":
(parContainer.Controls[index] as DateTimePicker).Checked = false;
break;
}
}
}
}
}
}