gpt4 book ai didi

c# - 学生信息的数据绑定(bind)

转载 作者:行者123 更新时间:2023-11-28 04:35:04 25 4
gpt4 key购买 nike

你好我一直在努力处理我的这部分代码,我需要实例化一个窗口,如果在我搜索时在我的列表中找到学生记录,它将打开它的另一个窗口,以便它可以编辑。

场景例如是这样的。我的名单上有一个学生叫:詹姆斯和罗杰。当我在文本框中输入 Roger 并搜索它时,会弹出另一个窗口并显示 Roger 的所有详细信息。我怎样才能做到这一点?我试过了,但每次我搜索罗杰的名字时,都会弹出詹姆斯的详细信息(cs 这是列表中添加的第一个详细信息。)我会等待回应。提前致谢。这是我的代码。

    public partial class EditStudent : Window
{

List<Data> editstudentdata = new List<Data>();


public EditStudent(List<Data>studentdata)
{
InitializeComponent();
editstudentdata = studentdata;
DataContext = studentdata;

}
void searchbtn(object sender, RoutedEventArgs e)
{
for ( int i = 0; i < editstudentdata.Count ; i++ )
{
if ( editstudentdata[i].idnum == searchidnumbox.Text)
{

( What should I input here? )

}
if ( editstudentdata[i].idnum != searchidnumbox.Text)
{
resultblock.Text = "Data not found!!!" ;
}
}

}

最佳答案

在 Window 上,为 Data 类创建一个属性,当您的条件匹配时,初始化您的窗口,并在调用 Window.Show() 之前初始化该属性。

像这样,

public partial class Window{
Data student;
Window(){
// load properties of student to some textboxex,
// so when this window will open your data is pre loaded.
}
}

按照你的逻辑,你可以这样做,

       for ( int i = 0; i < editstudentdata.Count ; i++ )
{
if ( editstudentdata[i].idnum == searchidnumbox.Text)
{
Window newWindow = new Window();
newWindow.student = editstudentdata[i];
this.Hide();
newWindow.show();
}
if ( editstudentdata[i].idnum != searchidnumbox.Text)
{
resultblock.Text = "Data not found!!!" ;
}
}

抱歉,这不是正确的编码,只是一种伪代码类型。希望对你有帮助。

关于c# - 学生信息的数据绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51718588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com