# Using Touch Support when Moving Columns or Rows

Explore examples of using code to set properties for moving columns and rows in Spread.NET.

## Content

You can use touch gestures to move columns or rows.
Press the column header or row header to select it, then slide to the target location. Release to move the column or row.
Select a column or row header range and then press and slide to move the range. Release to complete the action.
![Touch Support when Moving Columns or Rows](https://cdn.mescius.io/document-site-files/images/2238e618-a1fb-45a6-9ce5-9a4157bd2931/images/touchmove.png)
The [AllowColumnMove](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowColumnMove.html) property must be true to move columns. [AllowColumnMove](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowColumnMove.html) and [AllowColumnMoveMultiple](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowColumnMoveMultiple.html) must be true to move multiple columns. The [AllowRowMove](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowRowMove.html) property must be true to move rows. [AllowRowMove](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowRowMove.html) and [AllowRowMoveMultiple](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowRowMoveMultiple.html) must be true to move multiple rows. The [AllowRowMoveDataAllowAddNew](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowRowMoveDataAllowAddNew.html) property must be true to move a row below the add new row or asterisk row.
Refer to [Using Touch Support with Selections](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsselection) for more information on how to select a column or row.
**Using Code**
This example sets the [AllowColumnMove](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowColumnMove.html), [AllowColumnMoveMultiple](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowColumnMoveMultiple.html), [AllowRowMove](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowRowMove.html), and [AllowRowMoveMultiple](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowRowMoveMultiple.html) properties.

```csharp
fpSpread1.AllowColumnMove = true;
fpSpread1.AllowColumnMoveMultiple = true;
fpSpread1.AllowRowMove = true;
fpSpread1.AllowRowMoveMultiple = true;
```

```vbnet
fpSpread1.AllowColumnMove = True
fpSpread1.AllowColumnMoveMultiple = True
fpSpread1.AllowRowMove = True
fpSpread1.AllowRowMoveMultiple = True
```

**Using Code**
This example sets the [AllowRowMoveDataAllowAddNew](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.FpSpread.AllowRowMoveDataAllowAddNew.html) property after binding the control. The [DataAllowAddNew](/spreadnet/api/latest/online-win/FarPoint.Win.Spread/FarPoint.Win.Spread.SheetView.DataAllowAddNew.html) property must be true to allow the asterisk row.

```csharp
DataSet ds = new DataSet();
                DataTable emp = new DataTable("Employees");
                DataTable div = new DataTable("Division");
                emp.Columns.Add("LastName");
                emp.Columns.Add("FirstName");
                emp.Rows.Add(new Object[] { "Jones", "Marianne" });
                emp.Rows.Add(new Object[] { "Fieldes", "Anna" });
                div.Columns.Add("Section");
                div.Columns.Add("Specialty");
                div.Rows.Add(new Object[] { "Finance", "Taxes" });
                div.Rows.Add(new Object[] { "Mergers", "Legal" });
                ds.Tables.AddRange(new DataTable[] { emp, div });
                fpSpread1.DataSource = ds;
                fpSpread1.DataMember = "Division";
                fpSpread1.AllowRowMove = true;
                fpSpread1.AllowRowMoveMultiple = true;
                fpSpread1.ActiveSheet.DataAllowAddNew = true;
                fpSpread1.AllowRowMoveDataAllowAddNew = true;
```

```vbnet
Dim ds As New DataSet()
                Dim emp As New DataTable("Employees")
                Dim div As New DataTable("Division")
                emp.Columns.Add("LastName")
                emp.Columns.Add("FirstName")
                emp.Rows.Add(New Object() {"Jones", "Marianne"})
                emp.Rows.Add(New Object() {"Fieldes", "Anna"})
                div.Columns.Add("Section")
                div.Columns.Add("Specialty")
                div.Rows.Add(New Object() {"Finance", "Taxes"})
                div.Rows.Add(New Object() {"Mergers", "Legal"})
                ds.Tables.AddRange(New DataTable() {emp, div})
                fpSpread1.DataSource = ds
                fpSpread1.DataMember = "Division"
                fpSpread1.AllowRowMove = True
                fpSpread1.AllowRowMoveMultiple = True
                fpSpread1.ActiveSheet.DataAllowAddNew = True
                fpSpread1.AllowRowMoveDataAllowAddNew = True
```

## See Also

[Using Touch Support with AutoFit](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsautofit)
[Using Touch Support with Cell Notes](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tscellnote)
[Using Touch Support with Charts](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tschart)
[Using Touch Support with Clipboard Operations](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsclipboard)
[Using Touch Support with Drag and Fill](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsdragfill)
[Using Touch Support with Drop-Down Elements](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tselements)
[Using Touch Support with Editable Cells](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tseditcells)
[Using Touch Support with InputMan Cells](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsinputman)
[Using Touch Support with Filtering](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsfilter)
[Using Touch Support with Grouping](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsrangegroup/tsgrouping)
[Using Touch Support with Range Grouping](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsrangegroup)
[Using Touch Support when Resizing Columns or Rows](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsresize)
[Using Touch Support with Scrolling](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsscroll)
[Using Touch Support with Selections](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsselection)
[Using Touch Support with Shapes](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsshapes)
[Using Touch Support when Sorting](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tssort)
[Using Touch Support with Viewports](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tsviewport)
[Using Touch Support with the Tab Strip](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tstabstrip)
[Using Touch Support with Zooming](/spreadnet/docs/latest/online-win/overview/spwin-devguide/tsmain/tsusing/tszoom)