سؤال

I have two tables: Requests and Items. This MouseUp event is for WinForm DatagridRow. How use this event for WPF DataGrid?

private void gridRequests_MouseUp(object sender, MouseEventArgs e)
        {
            DataTable dt = new DataTable();
            DataBase db = new DataBase();
            try
            {
                s = gridRequests[0, gridRequests.CurrentRow.Index].Value.ToString();
                dt = db.MySelect("select * from Items where RequestID='" + s + "'");
                gridItems.DataSource = dt;
                gridItems.Columns[0].HeaderText = "No.";
                gridItems.Columns[1].HeaderText = "Item Code";
                gridItems.Columns[2].HeaderText = "Item Name";

            }
            catch { }
        }

I use this in wpf:

private void requestsDataGrid_MouseUp(object sender, MouseButtonEventArgs e)
        {
            DataTable dt = new DataTable();
            DataBase db = new DataBase();
            s = requestsDataGrid[0, requestsDataGrid.CurrentRow.Index].Value.ToString();
            dt = db.MySelect("select * from Items where RequestID='" + s + "'");
        }

CurrentRow or CurrentCell is my error point.

هل كانت مفيدة؟

المحلول

نصائح أخرى

Thank you Arsen, I used this:

 private void requestsDataGrid_MouseUp(object sender, MouseButtonEventArgs e)
        {
            DataTable dt = new DataTable();
            DataBase db = new DataBase();

                string s = requestsDataGrid.SelectedItem.ToString();

                dt = db.MySelect("select * from Items where RequestID='" + s + "'");
                gridItems.DataContext = dt;
                gridItems.Columns[0].HeaderStringFormat = "No";
                gridItems.Columns[1].HeaderStringFormat = "Item Code;
                gridItems.Columns[2].HeaderStringFormat = "Item Name";

        }

this common error: Conversion failed when converting the varchar value 'System.Data.DataRowView' to data type int.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top