我正在编写一个程序,要求用户输入他们的房子或公寓的信息。他们将输入有关房产ID,地址,年份建造,卧室,面积和价格的信息。一旦他们完成了他们选择输入是或否,为#34;提供"(这适用于公寓)或他们可以输入车库容量的数字(这适用于房屋)。我有一个名为DisplayInfo()的方法,它在列中显示所有这些信息。该程序底部有两个列表框,一个用于公寓,一个用于房屋。还有两个按钮,一个用于添加房子,另一个用于添加公寓。此按钮将地址添加到相应的列表框中。我遇到的问题是,在名为display的最后一个按钮上,所选的房屋或公寓应显示在消息框中,该消息框使用DisplayInfo()显示所有信息。这就是我现在所拥有的
这是DisplayInfo()方法
public virtual string DisplayInfo()
{
return string.Format("Property ID: {0}\nProperty Address: {1}\nYear Built: {2}\nNumber of Bedrooms: {3}\nSquare Footage: {4}\nPrice: {5}", GetID(),
GetAddress(), GetYearBuilt(), GetBedrooms(), GetSquareFootage(), GetPrice());
这就是我显示消息框所用的内容,它只是显示用户在不同消息框中输入的每个房屋或公寓。
foreach (Property_Dwelling property in Home)
{
MessageBox.Show(property.DisplayInfo(), property.GetType().ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information);
}
和
foreach (Property_Dwelling property in Home)
{
MessageBox.Show(property.DisplayInfo(), property.GetType().ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information);
}
答案 0 :(得分:0)
编辑:新代码,基于评论
foreach (Property_Dwelling property in Home)
{
//Only displays the messagebox if the address of the property is the same as the text displayed in the listbox
if(property.GetAddress() == myListBox.Text)
{
MessageBox.Show(property.DisplayInfo(), property.GetType().ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
您可能想要在尝试显示其信息之前验证是否已选择某个项目。
这对你有用吗?
答案 1 :(得分:0)
所以,你正在展示所有的房屋,因为你正在为家里的每个家庭做一个(这是一个班级吗?)并且显示所有信息。
首先应找到要在家中显示的项目,然后仅显示数据。