user710502
user710502

Reputation: 11469

C# Question about Data Grid

I have the buttons populated in a DataGrid, now I want them to show on the right of the data not the default position (left). How can I achieve this?

Thank you

<asp:DataGrid runat="server" ID="myDataGrid"
BorderColor="Tan" BorderWidth="1px" CellPadding="2" ForeColor="Black" 
GridLines="None">
<Columns>
   <asp:TemplateColumn>
       <ItemTemplate>
          <asp:Button runat="server" Text="Delete"/>
        </ItemTemplate>
   </asp:TemplateColumn>
</Columns>

PS: I am binding the data to an array

  myDataGrid.DataSource = vals;
  myDataGrid.DataBind();

Upvotes: 0

Views: 69

Answers (2)

Bala R
Bala R

Reputation: 108977

You can define a column for the array of string before the button column like this

<Columns>
   <asp:TemplateColumn>
       <ItemTemplate>
          <asp:Label ID="someLabelId" runat="server" 
                                              Text='<%# Container.DataItem %>' />
        </ItemTemplate>
   </asp:TemplateColumn>

   <asp:TemplateColumn>
       <ItemTemplate>
          <asp:Button runat="server" Text="Delete"/>
        </ItemTemplate>
   </asp:TemplateColumn>
</Columns>

and set AutoGenerateColumns="false" for the DataGrid

<asp:DataGrid runat="server" ID="myDataGrid" AutoGenerateColumns="false"

Upvotes: 1

Adam Tuliper
Adam Tuliper

Reputation: 30152

use ItemStyle HorizontalAlign="Right" as defined at: http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.datagrid.itemstyle.aspx

try:

<asp:TemplateColumn ItemStyle-HorizontalAlign="Right">

Upvotes: 0

Related Questions