Как я могу использовать мои методы класса ToString() в моей форме, чтобы добавить его в мой список C#?
Это то, что я до сих пор. Два класса Гость и Гифт. Гость возвращает простое имя, когда пользователь вводит его в textBox. Подарок - это список предметов, которые Гости могут выбрать для покупки. Когда пользователь отправляет свой выбор с введенным именем, он удаляет элемент из первого списка, а затем добавляет выбранный элемент + имя пользователя во второй список. Я не могу понять, почему мои методы ToString() не работают правильно, чтобы сделать это. Какие-либо предложения?
Снова я пытаюсь передать свой ввод в методы класса, затем взять этот вывод и поместить его во второй список. Я мог бы легко использовать только введенный текст и выбранный элемент и переместить его, но это не включало бы мои занятия.
Это моя форма:
public partial class Form1 : Form
{
//Guest newGuest = new Guest();
Guests newGuest = new Guests();
public Form1()
{
InitializeComponent();
}
List<Gift> newGift = new List<Gift>
{
new Gift("Horse"),
new Gift("Pony"),
new Gift("Plane"),
new Gift("Kite"),
new Gift("Lamp"),
new Gift("Dog"),
new Gift("Cat")
};
private void TextboxClear()
{
firstTxt.Clear();
}
//Method that adds choice from first listbox to second and removes it from the first
private void MoveListBoxItems(ListBox wishLst, ListBox takenLst)
{
ListBox.SelectedObjectCollection sourceItems = wishLst.SelectedItems;
foreach (var newGift in sourceItems)
{
takenLst.Items.Add(string.Format("{0}, {1}", newGift.ToString(), newGuest.ToString()));
TextboxClear();
}
while (wishLst.SelectedItems.Count > 0)
{
wishLst.Items.Remove(wishLst.SelectedItems[0]);
}
}
private void submitBtn_Click(object sender, EventArgs e)
{
if (String.IsNullOrEmpty(firstTxt.Text))
{
MessageBox.Show("Please enter first and last name.", "Warning");
this.DialogResult = DialogResult.None;
}
else
{
if (wishLst.SelectedIndex >= 0)
{
MoveListBoxItems(wishLst, takenLst);
}
else
{
return;
}
}
}
private void fillBtn_Click(object sender, EventArgs e)
{
wishLst.Items.Clear();
foreach (var item in newGift)
{
wishLst.Items.Add(item.ListGift);
}
}
}
}
Гостевой класс:
class Guests
{
#region [ Fields ]
private string _name;
#endregion
#region [ Properties ]
public string Name
{
get { return _name; }
set
{
if (value == null)
throw new ArgumentNullException("Name",
"Name must not be null");
_name = CultureInfo.CurrentCulture.TextInfo.ToTitleCase(value.Trim());
}
}
#endregion
#region [ Constructors ]
public Guests()
{
this.Name = string.Empty;
}
public Guests(string name)
{
this.Name = name;
}
#endregion
#region [ Methods ]
public override string ToString()
{
return String.Format("{0}",
this.Name.ToString());
}
#endregion
}
}
И подарочный класс:
class Gift
{
private string _listGift;
public string ListGift
{
get { return _listGift; }
set { _listGift = value; }
}
public Gift()
{
this.ListGift = string.Empty;
}
public Gift(string listGift)
{
this.ListGift = listGift;
}
public override string ToString()
{
return string.Format("{0} Purchased by", this.ListGift);
}
}
}