データ バインディングの前にリスト項目が消去されるかどうかを示す値を取得または設定します。
名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)

構文
<ThemeableAttribute(False)> _
Public Overridable Property AppendDataBoundItems As Boolean
Dim instance As ListControl
Dim value As Boolean
value = instance.AppendDataBoundItems
instance.AppendDataBoundItems = value
[ThemeableAttribute(false)]
public virtual bool AppendDataBoundItems { get; set; }
[ThemeableAttribute(false)]
public:
virtual property bool AppendDataBoundItems {
bool get ();
void set (bool value);
}
/** @property */
public boolean get_AppendDataBoundItems ()
/** @property */
public void set_AppendDataBoundItems (boolean value)
public function get AppendDataBoundItems () : boolean
public function set AppendDataBoundItems (value : boolean)
プロパティ値
データ バインディングの前にリスト項目が消去されない場合は
true。データ バインディングが行われる前に項目のコレクションが消去される場合は
false。既定値は
false です。

解説
AppendDataBoundItems プロパティを使用すると、データ バインディングが行われる前に、項目を ListControl オブジェクトに追加できます。データ バインディングの後、項目のコレクションには、データ ソースの項目と以前に追加された項目の両方が格納されます。
このプロパティの値はビューステートに格納されます。
このプロパティは、テーマまたはスタイル シート テーマによって設定することはできません。詳細については、ThemeableAttribute、ASP.NET のテーマとスキンの概要 の各トピックを参照してください。

使用例
データ バインド項目と、ListBox コントロールでデータ バインドされていない項目の両方を含める方法を次のコード例に示します。Page の Load イベントでは、1 つの項目が Items コレクションに追加され、AppendDataBoundItems プロパティが true に 設定されます。次に、ListBox コントロールが DataTable コントロールにバインドされます。結果として生成された ListBox コントロールには、データ バインド項目と個別に追加された項目の両方が格納されます。
<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html >
<script language="vb" runat="server">
Function CreateDataSource() As ICollection
Dim dt As New DataTable()
Dim dr As DataRow
dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
dt.Columns.Add(New DataColumn("DateTimeValue", GetType(DateTime)))
dt.Columns.Add(New DataColumn("BoolValue", GetType(Boolean)))
dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double)))
Dim i As Integer
For i = 0 To 8
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " + i.ToString()
dr(2) = DateTime.Now
If (i Mod 2) <> 0 Then
dr(3) = True
Else
dr(3) = False
End If
dr(4) = 1.23 *(i + 1)
dt.Rows.Add(dr)
Next i
Dim dv As New DataView(dt)
Return dv
End Function
Sub Page_Load(sender As Object, e As EventArgs)
If Not IsPostBack Then
RadioButtonList1.Items.Add("Non-databound item.")
RadioButtonList1.AppendDataBoundItems = True
RadioButtonList1.DataSource = CreateDataSource()
RadioButtonList1.DataTextField = "StringValue"
RadioButtonList1.DataValueField = "CurrencyValue"
RadioButtonList1.DataBind()
End If
End Sub
Sub Index_Changed(sender As Object, e As EventArgs)
Label1.Text = "You selected " & RadioButtonList1.SelectedItem.Text & _
" with a value of : " & RadioButtonList1.SelectedItem.Value & "."
End Sub
</script>
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:RadioButtonList id="RadioButtonList1"
OnSelectedIndexChanged="Index_Changed"
AutoPostBack="true"
runat="server"/>
<br />
<asp:Label id="Label1" runat="server"/>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html >
<script language="c#" runat="server">
ICollection CreateDataSource() {
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
dt.Columns.Add(new DataColumn("DateTimeValue", typeof(DateTime)));
dt.Columns.Add(new DataColumn("BoolValue", typeof(bool)));
dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
for (int i = 0; i < 9; i++) {
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = DateTime.Now;
dr[3] = (i % 2 != 0) ? true : false;
dr[4] = 1.23 * (i+1);
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
return dv;
}
void Page_Load(Object sender, EventArgs e) {
if (!IsPostBack) {
RadioButtonList1.Items.Add("Non-databound item.");
RadioButtonList1.AppendDataBoundItems = true;
RadioButtonList1.DataSource = CreateDataSource();
RadioButtonList1.DataTextField="StringValue";
RadioButtonList1.DataValueField="CurrencyValue";
RadioButtonList1.DataBind();
}
}
void Index_Changed(Object sender, EventArgs e) {
Label1.Text = "You selected " + RadioButtonList1.SelectedItem.Text +
" with a value of $" + RadioButtonList1.SelectedItem.Value +
".";
}
</script>
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:RadioButtonList id="RadioButtonList1"
OnSelectedIndexChanged="Index_Changed"
AutoPostBack="true"
runat="server"/>
<br />
<asp:Label id="Label1" runat="server"/>
</form>
</body>
</html>
<%@ Page Language="JScript" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html >
<script language="jscript" runat="server">
function CreateDataSource() : ICollection{
var dt : DataTable = new DataTable()
var dr : DataRow
dt.Columns.Add(new DataColumn("IntegerValue", System.Int32))
dt.Columns.Add(new DataColumn("StringValue", System.String))
dt.Columns.Add(new DataColumn("DateTimeValue", System.DateTime))
dt.Columns.Add(new DataColumn("BoolValue", System.Boolean))
dt.Columns.Add(new DataColumn("CurrencyValue", System.Double))
var i : int
for( i = 0; i < 9; i++){
dr = dt.NewRow()
dr("IntegerValue") = i
dr("StringValue") = "Item " + i.ToString()
dr("DateTimeValue") = DateTime.Now
dr("BoolValue") = ((i % 2) != 0) ? true : false
dr("CurrencyValue") = 1.23 *(i + 1)
dt.Rows.Add(dr)
}
var dv : DataView = new DataView(dt)
return dv
}
function Page_Load(sender : Object, e : EventArgs){
if(!IsPostBack){
RadioButtonList1.Items.Add("Non-databound item.")
RadioButtonList1.AppendDataBoundItems = true
RadioButtonList1.DataSource = CreateDataSource()
RadioButtonList1.DataTextField = "StringValue"
RadioButtonList1.DataValueField = "CurrencyValue"
RadioButtonList1.DataBind()
}
}
function Index_Changed(sender : Object, e : EventArgs){
Label1.Text = "You selected " + RadioButtonList1.SelectedItem.Text
+ " with a value of : " + RadioButtonList1.SelectedItem.Value + "."
}
</script>
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:RadioButtonList id="RadioButtonList1"
OnSelectedIndexChanged="Index_Changed"
AutoPostBack="true"
runat="server"/>
<br />
<asp:Label id="Label1" runat="server"/>
</form>
</body>
</html>

プラットフォーム
Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition
Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。

バージョン情報
.NET Framework
サポート対象 : 3.0,2.0

参照