知识点和纠正

临时表格的操作:

#region 声明两个临时表格
public DataTable dtAddition; 左边表格
public DataTable dtBddition; 右边表格
#endregion

     然后再去加载事件里面写
    DataTable dt = myClient.服务端的查询方法.Tables[0];
    UCStaffInformation(这个是前面表格赋予的名字).ItemsSource(这个是内容的意思) = dt.DefaultView;

        //实例化左右边的表格,并给它们添加表的列,每一列的名字都要对齐前台的表格字段,
        < DataGridTextColumn Header = "房号" Width = "65" Binding = "{Binding roomNumber}" Foreground = "DarkSlateBlue" FontWeight = "Black" />
            < DataGridTextColumn Header = "ID" Width = "65" Binding = "{Binding roomID}" Foreground = "DarkSlateBlue" FontWeight = "Black" Visibility = "Collapsed" />
                            //左边,有多少字段就添加多少字段(注:要获取选中行,并且判断。需要ID(数据库也要获取),并且把它隐藏起来,别用hidden,因为占地方)
                            dtAddition = new DataTable();
    dtAddition.Columns.Add(添加) ("roomNumber", typeof(string)); (这是数据库给的数据类型)
     dtAddition.Columns.Add("", typeof());
    dtAddition.Columns.Add("", typeof());
                dtAddition.Columns.Add("", typeof());
                dtAddition.Columns.Add("", typeof());

        //右边
         dtBddition = new DataTable();
    dtBddition.Columns.Add("roomNumber", typeof(string));有多少列,写多少列。然后再写判断
        if(dt.Rows.Count>0){//dt是页面表格数据的意思,Rows.Count是表格行的总数.大于零,然后进去循环
            for (int i = 0; i<dt.rows.count; i++)
		{
              DataRow dr = dtAddition.NewRow();
    dr["roomNumber"] = dt.Rows[i]["roomNumber"];
                dr["roomID"] = dt.Rows[i]["roomID"];
                dr["detailedAttributeGatherName"] = dt.Rows[i]["detailedAttributeGatherName"]; 
                dr["housePrice"] = dt.Rows[i]["housePrice"]; 
                dr["book"] = dt.Rows[i]["book"];
                dtAddition.Rows.Add(dr);
		}

    } 

然后再去添加按钮点击事件操作:
//添加按钮
private void addition_Click(object sender, RoutedEventArgs e)
{
try
{
if ((DataRowView)UCStaffInformation.SelectedItem != null)
{
//1.选中数据
//获取行
DataRowView dv = (DataRowView)UCStaffInformation.SelectedItem;
//绑定邻居站点表(获取主键ID)
int introomID = Convert.ToInt32(((DataRowView)UCStaffInformation.SelectedItem).Row[“roomID”]);
//绑定站点信息
//DataTable dtSite = myClient.SelectRoom().Tables[0];
//UCStaffInformation1.ItemsSource = dtSite.DefaultView;
for (int i = 0; i <dtAddition.Rows.Count; i++)
{
if(introomID == Convert.ToInt32(dtAddition.Rows[i][“roomID”]))
{
//右边的表赋值
DataRow dr = dtBddition.NewRow();
dr[“roomNumber”] = dtAddition.Rows[i][“roomNumber”];
dr[“roomID”] = dtAddition.Rows[i][“roomID”];
dr[“detailedAttributeGatherName”] = dtAddition.Rows[i][“detailedAttributeGatherName”];
dr[“housePrice”] = dtAddition.Rows[i][“housePrice”];
//添加
dtBddition.Rows.Add(dr);
UCStaffInformation1.ItemsSource = dtBddition.DefaultView;
//把左边移除
dtAddition.Rows.RemoveAt(i);
UCStaffInformation.ItemsSource = dtAddition.DefaultView;
break;
}
}

            }
            else
            {
                MessageBox.Show("请选择要添加的房间!");
            }
            
        }
        catch (Exception)
        {

            return;
        }
    }

9.点击选中事件,然后获取需要的数据,再把它赋值到所需要的文本框:
try
{
if ((DataRowView)UCStaffInformation.SelectedItem != null)
{
//1.选中数据
//获取行
DataRowView dv = (DataRowView)UCStaffInformation.SelectedItem;
//获取绑定的字段
String roomNumber1 = Convert.ToString(((DataRowView)UCStaffInformation.SelectedItem).Row[“roomNumber”]);
String roomNumber2 = Convert.ToString(((DataRowView)UCStaffInformation.SelectedItem).Row[“detailedAttributeGatherName”]);
String roomNumber3 = Convert.ToString(((DataRowView)UCStaffInformation.SelectedItem).Row[“housePrice”]);
//赋值给文本框
txt_Name.Text = roomNumber1;
txt_Name1.Text = roomNumber2;
txt_Name2.Text = roomNumber3;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值