This commit is contained in:
Никита Волков 2024-09-18 19:06:51 +04:00
parent 5f19fb8329
commit cca38e76c1
3 changed files with 11 additions and 58 deletions

View File

@ -16,7 +16,7 @@ namespace WinFormsLibraryVolkov
private EventHandler _changeEvent; private EventHandler _changeEvent;
// Диапазон // Диапазон
private string example = "Введите дату от " + DateTime.MinValue.ToShortDateString() + " до " + DateTime.MaxValue.ToShortDateString(); private string example;
// 2 публичных поля для настройки границ диапазона // 2 публичных поля для настройки границ диапазона
public DateTime? MinDate { get; set; } public DateTime? MinDate { get; set; }
@ -68,6 +68,7 @@ namespace WinFormsLibraryVolkov
private void dateTimePicker_Enter(object sender, EventArgs e) private void dateTimePicker_Enter(object sender, EventArgs e)
{ {
ToolTip tt = new ToolTip(); ToolTip tt = new ToolTip();
example = "Введите дату от " + MinDate?.ToShortDateString() + " до " + MaxDate?.ToShortDateString();
tt.Show(example, dateTimePicker, 30, -20, 1000); tt.Show(example, dateTimePicker, 30, -20, 1000);
} }

View File

@ -12,9 +12,6 @@ namespace WinFormsLibraryVolkov
{ {
public partial class CustomSelectedCheckedListBox : UserControl public partial class CustomSelectedCheckedListBox : UserControl
{ {
// Приватный список для хранения элементов
private List<string> itemsList = new List<string>();
public event EventHandler _changeEvent; public event EventHandler _changeEvent;
public CustomSelectedCheckedListBox() public CustomSelectedCheckedListBox()
@ -30,32 +27,10 @@ namespace WinFormsLibraryVolkov
foreach (var item in items) foreach (var item in items)
{ {
if (!itemsList.Contains(item))
{
itemsList.Add(item);
checkedListBox.Items.Add(item, false); checkedListBox.Items.Add(item, false);
}
} }
} }
public void AddItem(string newItem)
{
if (!itemsList.Contains(newItem))
{
itemsList.Add(newItem);
UpdateCheckedListBox();
}
}
// Метод для обновления CheckedListBox на основе itemsList
private void UpdateCheckedListBox()
{
checkedListBox.Items.Clear();
foreach (var item in itemsList)
{
checkedListBox.Items.Add(item, false);
}
}
//Cобытие, вызываемое при смене значения в CheckedListBox //Cобытие, вызываемое при смене значения в CheckedListBox
public event EventHandler ChangeEvent public event EventHandler ChangeEvent
@ -75,7 +50,6 @@ namespace WinFormsLibraryVolkov
public void ClearList() public void ClearList()
{ {
checkedListBox.Items.Clear(); checkedListBox.Items.Clear();
itemsList.Clear();
} }
// Публичное свойство для получения и установки выбранного значения // Публичное свойство для получения и установки выбранного значения

View File

@ -61,42 +61,20 @@ namespace WinFormsTestApp
} }
} }
private void textBoxMin_KeyPress(object sender, KeyPressEventArgs e)
{
char ch = e.KeyChar;
if (!Char.IsDigit(ch) && ch != 8 && ch != 45)
{
e.Handled = true;
}
}
private void textBoxMax_KeyPress(object sender, KeyPressEventArgs e)
{
char ch = e.KeyChar;
if (!Char.IsDigit(ch) && ch != 8 && ch != 45)
{
e.Handled = true;
}
}
private void buttonAdd_Click(object sender, EventArgs e) private void buttonAdd_Click(object sender, EventArgs e)
{ {
string newItem = textBoxAdd.Text.Trim(); string newItem = textBoxAdd.Text.Trim();
if (!string.IsNullOrEmpty(newItem)) if (!string.IsNullOrEmpty(newItem))
{ {
if (!customSelectedCheckedListBox.SelectedElement.Equals(newItem)) var itemsToAdd = new List<string> { newItem };
{
if (customSelectedCheckedListBox.SelectedElement != string.Empty) // Добавляем новый элемент в список
{ customSelectedCheckedListBox.PopulateList(itemsToAdd);
customSelectedCheckedListBox.SelectedElement = newItem; }
} else
else {
{ MessageBox.Show("Введите элемент для добавления.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Warning);
customSelectedCheckedListBox.AddItem(newItem);
customSelectedCheckedListBox.SelectedElement = newItem;
}
}
} }
} }