Export (0) Print
Expand All

DataControlFieldCell Class

Note: This class is new in the .NET Framework version 2.0.

Represents a cell in the rendered table of a tabular ASP.NET data-bound control, such as DetailsView or GridView.

Namespace: System.Web.UI.WebControls
Assembly: System.Web (in system.web.dll)

public class DataControlFieldCell : TableCell
public class DataControlFieldCell extends TableCell
public class DataControlFieldCell extends TableCell

The DataControlFieldCell class is a strongly typed TableCell class that represents a cell in ASP.NET data-bound controls that render their contents in a tabular layout, such as GridView and DetailsView.

The DataControlField object that contains the DataControlFieldCell object controls how the cell is rendered by applying styles to the cell. You can access the containing DataControlField object using the ContainingField property.

The following code example demonstrates how a DataControlFieldCell object can be used and manipulated by a class that derives from DataControlField. The RadioButtonField class adds a RadioButton control to each DataControlFieldCell object in its InitializeCell method, and later checks the value of the RadioButton control in the ExtractValuesFromCell method. This example is part of a larger example provided for the DataControlField class.

// This method is called by the ExtractRowValues methods of 
// GridView and DetailsView. Retrieve the current value of the 
// cell from the Checked state of the Radio button.
public override void ExtractValuesFromCell(IOrderedDictionary dictionary,
                                           DataControlFieldCell cell,
                                           DataControlRowState rowState,
                                           bool includeReadOnly)
{

  // Determine whether the cell contains a RadioButton 
  // in its Controls collection.
  if (cell.Controls.Count > 0) {
    RadioButton radio = cell.Controls[0] as RadioButton;

    object checkedValue = null;
    if (null == radio) {
      // A RadioButton is expected, but a null is encountered.
      // Add error handling.
      throw new InvalidOperationException
          ("RadioButtonField could not extract control.");
    }
    else {
        checkedValue = radio.Checked;
    }


    // Add the value of the Checked attribute of the
    // RadioButton to the dictionary.
    if (dictionary.Contains(DataField))
      dictionary[DataField] = checkedValue;
    else
      dictionary.Add(DataField, checkedValue);
  }
}

// This method is called by the ExtractRowValues methods on GridView 
//and DetailsView. Retrieve
// the current value of the cell from the Checked state of the Radio button.
public void ExtractValuesFromCell(IOrderedDictionary dictionary, 
    DataControlFieldCell cell, DataControlRowState rowState, 
    boolean includeReadOnly) throws InvalidOperationException
{
    // Does the cell contain a RadioButton in its Controls collection?
    if (cell.get_Controls().get_Count() > 0) {
        RadioButton radio = (RadioButton)cell.get_Controls().get_Item(0);

        Object checkedValue = null;
        if (null == radio) {
            // A RadioButton is expected,
            // but a null is encountered. Add error handling.
            throw new InvalidOperationException("RadioButtonField could not"
                + "extract control.");
        }
        else {
            checkedValue = (System.Boolean)radio.get_Checked();
        }
        // Add the value of the Checked attribute of the
        // RadioButton to the dictionary.
        if (dictionary.Contains(get_DataField())) {
            dictionary.set_Item(get_DataField(), checkedValue);
        }
        else {
            dictionary.Add(get_DataField(), checkedValue);
        }
    }
} //ExtractValuesFromCell

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0

Community Additions

ADD
Show:
© 2014 Microsoft