[英]Trying to create a highest bidder WPF program in C# using Visual Studio
讓我首先解釋我的目標:
我正在嘗試為單個產品創建出價最高的程序:花瓶。 (只有一種產品,產品不變。)
我有 2 個輸入名稱和 **offer **,我在它的正下方有一個標簽,默認情況下(當沒有報價時)“目前沒有報價”。
從用戶第一次提交報價開始,他就自動成為出價最高的人。
標簽更改為以下內容:“{name} 與 {offer} 的報價最高。
現在這里是棘手的部分,我無法弄清楚如何制作我的程序,將下一個投標人的報價與前一個投標人的報價進行比較。
我希望它說明它是否更低:“對不起,{previousbidder} 目前擁有最高的 {offer}”
並且當它之前的出價者出價更高時,標簽應更改為當前出價者出價最高:“{name} has with {offer} 最高出價。”
這是 WPF 的圖像
https://i.stack.imgur.com/MqQ21.png
這是代碼:'''
https://ideone.com/e.js/DKVzNG
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void butn1_Click(object sender, RoutedEventArgs e)
{
{
//variabelen
string name = txtbox1.Text;
string txtbod = txtbox2.Text;
string bodtxt = txtbox1.Text;
int bod = Convert.ToInt32(txtbod);
int hoogstebieder = 0;
if (bod > hoogstebieder);
{
labeltext.Content = $" {name} heeft met {bod} het hoogste bod.";
hoogstebieder = bod;
}
else
{
labeltext.Content = "Gelieve een postief getal in te voeren.";
}
if (bod > hoogstebieder)
{
labeltext.Content = $" {name} heeft met {bod} het hoogste bod.";
}
else
{
labeltext.Content = $" {name} heeft met {bod} het hoogste bod.";
}
}
}
}
}
''
這是 XAML:
'''
https://ideone.com/e.js/AIX1m5
'''
我希望我已經很好地說明了我的問題,並且沒有犯任何新手錯誤。
我先謝謝大家。
{ int hoogstebieder = 0; if ([...]) { [...] hoogstebieder = bod; } }
您定義的變量hoogstebieder
僅在您的方法執行期間存在。 這意味着下次您輸入此方法時,它會再次從0
開始。 因此,您將永遠是第一個出價者。
要解決此問題,您必須將投標人和前一個人的姓名保存在方法完成時不會刪除值的位置。 您可以將它們保存在MainWindow
作為字段或屬性。
public partial class MainWindow : Window
{
/// <summary>
/// The bidders name.
/// </summary>
private string bidderName;
/// <summary>
/// The bidders amount.
/// </summary>
private int bidderAmount;
private void butn1_Click(object sender, RoutedEventArgs e)
{
[...]
this.bidderAmount = bod;
[...]
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.