DataGrid.CreateControlStyle Method

Definition

Creates new control style.

protected:
 override System::Web::UI::WebControls::Style ^ CreateControlStyle();
protected override System.Web.UI.WebControls.Style CreateControlStyle ();
override this.CreateControlStyle : unit -> System.Web.UI.WebControls.Style
Protected Overrides Function CreateControlStyle () As Style

Returns

A Style the represents the new style.

Examples

The following code example demonstrates how to override the CreateControlStyle method in a custom server control so that it always displays the GridLines with no CellSpacing in the DataGrid.

<%@ Page language="c#" %>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>Custom DataGrid - CreateControlStyle - C# Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">
      <h3>Custom DataGrid - CreateControlStyle - C# Example</h3>
      <aspSample:CustomDataGridCreateControlStyle id="Datagrid1" runat="server" AutoGenerateColumns="False">
        <Columns>
          <asp:HyperLinkColumn Text="www.microsoft.com" Target="_blank" HeaderText="HyperLinks" NavigateUrl="http://www.microsoft.com" />
        </Columns>
      </aspSample:CustomDataGridCreateControlStyle>
    </form>
  </body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>Custom DataGrid - CreateControlStyle - VB.NET Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">
      <h3>Custom DataGrid - CreateControlStyle - C# Example</h3>
            <aspSample:CustomDataGridCreateControlStyle id="Datagrid1" runat="server" AutoGenerateColumns="False">
                <Columns>
                    <asp:HyperLinkColumn Text="www.microsoft.com" Target="_blank" HeaderText="HyperLinks" NavigateUrl="http://www.microsoft.com" />
                </Columns>
            </aspSample:CustomDataGridCreateControlStyle>
    </form>
  </body>
</html>
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet.CS.Controls
{
    [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
    public sealed class CustomDataGridCreateControlStyle : System.Web.UI.WebControls.DataGrid
    {
        protected override System.Web.UI.WebControls.Style CreateControlStyle()
        {
            // Create a new TableStyle instance based on ViewState values.
            System.Web.UI.WebControls.TableStyle style = new System.Web.UI.WebControls.TableStyle(ViewState);
            
            // Show the GridLines with no CellSpacing.
            style.GridLines = System.Web.UI.WebControls.GridLines.Both;
            style.CellSpacing = 0;

            // Return the Style
            return style;
        }
    }
}
Imports System.Web
Imports System.Security.Permissions

Namespace Samples.AspNet.VB.Controls
    <AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public NotInheritable Class CustomDataGridCreateControlStyle
        Inherits System.Web.UI.WebControls.DataGrid

        Protected Overrides Function CreateControlStyle() As System.Web.UI.WebControls.Style

            ' Create a new TableStyle instance based on ViewState values.
            Dim style As New System.Web.UI.WebControls.TableStyle(ViewState)

            ' Show the GridLines with no CellSpacing.
            style.GridLines = System.Web.UI.WebControls.GridLines.Both
            style.CellSpacing = 0

            ' Return the Style
            Return style
        End Function
    End Class
End Namespace

Applies to

See also