日期:2014-05-18  浏览次数:20777 次

datagridview项对应值的问题
字段car_fee_flag 显示的停车状态是 int数据 0 表示未停车,1表示正在停车,2已经离开。
现在DataGridview中数据绑定后 car_fee_flag 显示的数据都是 0 1 2这样的 我想让 0 1 2在datagridview中显示成
未停车、已经停车、已经离开等字样 ,应该如何写? 不但要显示 未停车、已经停车、已经离开,原来的值 0 1 2也要能够取得,做修改数据用。


C# code

DateTime d_start = fee_date_starts.Value.Date;
DateTime d_end = fee_date_ends.Value.Date.AddDays(1);

sql_str = "select car_fee_nums as 会员卡号,car_fee_flag as 
停车状态 from car_park_fee where car_fee_start between '" + d_start + "'and '" + d_end + "' 
order by car_fee_id desc";
            
            if (DateTime.Compare(d_end, d_start) >= 0)
            {
                
                SqlConnection conn = new SqlConnection(fee_conn.sql_conn());
                SqlCommand cmd = new SqlCommand(sql_str, conn);
                find_do = new SqlDataAdapter();
                find_do.SelectCommand = cmd;
                ds = new DataSet();
                try
                {
                    find_do.Fill(ds, "rs");
                    d_report.Visible = true;
                }
                catch (System.Exception sqler)
                {
                    MessageBox.Show("数据库不存在或用户名密码错误!");
                    return;
                }
                d_report.DataSource = ds.Tables["rs"];
                }



------解决方案--------------------
C# code

那就在模板中使用用DropDownList来作为数据显示的控件

DropDownList1.DataTextField= "未停车...";
DropDownList1.DataValueField = "0,1,2";
绑定你自己搞定,显示的时候文本用Text属性,相应的值保存在Value属性中,下次修改时直接获取DropDownList控件的SelectedItem.Value 即可获取到你想要的0,1,2啥的,明白??