Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebControls / TreeNodeBinding.cs / 2 / TreeNodeBinding.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls {
using System;
using System.ComponentModel;
using System.Drawing.Design;
using System.Security.Permissions;
using System.Web;
///
/// Provides a data mapping definition for a TreeView
///
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[DefaultProperty("TextField")]
public sealed class TreeNodeBinding : IStateManager, ICloneable, IDataSourceViewSchemaAccessor {
private bool _isTrackingViewState;
private StateBag _viewState;
///
/// The data member to use in the mapping
///
[
DefaultValue(""),
WebCategory("Data"),
WebSysDescription(SR.Binding_DataMember),
]
public string DataMember {
get {
string s = (string)ViewState["DataMember"];
if (s == null) {
return String.Empty;
}
else {
return s;
}
}
set {
ViewState["DataMember"] = value;
}
}
///
/// The depth of the level for which this TreeNodeBinding is defining a data mapping
///
[
DefaultValue(-1),
TypeConverter("System.Web.UI.Design.WebControls.TreeNodeBindingDepthConverter, " + AssemblyRef.SystemDesign),
WebCategory("Data"),
WebSysDescription(SR.TreeNodeBinding_Depth),
]
public int Depth {
get {
object o = ViewState["Depth"];
if (o == null) {
return -1;
}
return (int)o;
}
set {
ViewState["Depth"] = value;
}
}
[DefaultValue("")]
[Localizable(true)]
[WebCategory("Databindings")]
[WebSysDescription(SR.TreeNodeBinding_FormatString)]
public string FormatString {
get {
string s = (string)ViewState["FormatString"];
if (s == null) {
return String.Empty;
}
return s;
}
set {
ViewState["FormatString"] = value;
}
}
///
/// Gets and sets the TreeNodeBinding ImageToolTip
///
[DefaultValue("")]
[Localizable(true)]
[WebCategory("DefaultProperties")]
[WebSysDescription(SR.TreeNodeBinding_ImageToolTip)]
public string ImageToolTip {
get {
string s = (string)ViewState["ImageToolTip"];
if (s == null) {
return String.Empty;
}
return s;
}
set {
ViewState["ImageToolTip"] = value;
}
}
///
/// Get and sets the fieldname to use for the ImageToolTip property in a TreeNode
///
[DefaultValue("")]
[TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebSysDescription(SR.TreeNodeBinding_ImageToolTipField)]
[WebCategory("Databindings")]
public string ImageToolTipField {
get {
string s = (string)ViewState["ImageToolTipField"];
if (s == null) {
return String.Empty;
}
else {
return s;
}
}
set {
ViewState["ImageToolTipField"] = value;
}
}
///
/// Gets and sets the image URl to be rendered for this node
///
[DefaultValue("")]
[Editor("System.Web.UI.Design.ImageUrlEditor, " + AssemblyRef.SystemDesign, typeof(UITypeEditor))]
[UrlProperty()]
[WebCategory("DefaultProperties")]
[WebSysDescription(SR.TreeNodeBinding_ImageUrl)]
public string ImageUrl {
get {
string s = (string)ViewState["ImageUrl"];
if (s == null) {
return String.Empty;
}
return s;
}
set {
ViewState["ImageUrl"] = value;
}
}
///
/// Get and sets the fieldname to use for the ImageUrl property in a TreeNode
///
[
DefaultValue(""),
TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign),
WebCategory("Databindings"),
WebSysDescription(SR.TreeNodeBinding_ImageUrlField),
]
public string ImageUrlField {
get {
string s = (string)ViewState["ImageUrlField"];
if (s == null) {
return String.Empty;
}
else {
return s;
}
}
set {
ViewState["ImageUrlField"] = value;
}
}
///
/// Gets and sets the URL to navigate to when the node is clicked
///
[DefaultValue("")]
[Editor("System.Web.UI.Design.UrlEditor, " + AssemblyRef.SystemDesign, typeof(UITypeEditor))]
[UrlProperty()]
[WebCategory("DefaultProperties")]
[WebSysDescription(SR.TreeNodeBinding_NavigateUrl)]
public string NavigateUrl {
get {
string s = (string)ViewState["NavigateUrl"];
if (s == null) {
return String.Empty;
}
return s;
}
set {
ViewState["NavigateUrl"] = value;
}
}
///
/// Get and sets the fieldname to use for the NavigateUrl property in a TreeNode
///
[
DefaultValue(""),
TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign),
WebCategory("Databindings"),
WebSysDescription(SR.TreeNodeBinding_NavigateUrlField),
]
public string NavigateUrlField {
get {
string s = (string)ViewState["NavigateUrlField"];
if (s == null) {
return String.Empty;
}
else {
return s;
}
}
set {
ViewState["NavigateUrlField"] = value;
}
}
///
/// Gets and sets whether to populate this binding immediately or on the next request for population
///
[
DefaultValue(false),
WebCategory("DefaultProperties"),
WebSysDescription(SR.TreeNodeBinding_PopulateOnDemand),
]
public bool PopulateOnDemand {
get {
object o = ViewState["PopulateOnDemand"];
if (o == null) {
return false;
}
return (bool)o;
}
set {
ViewState["PopulateOnDemand"] = value;
}
}
///
/// Gets and sets the action which the TreeNodeBinding will perform when selected
///
[DefaultValue(TreeNodeSelectAction.Select)]
[WebCategory("DefaultProperties")]
[WebSysDescription(SR.TreeNodeBinding_SelectAction)]
public TreeNodeSelectAction SelectAction {
get {
object o = ViewState["SelectAction"];
if (o == null) {
return TreeNodeSelectAction.Select;
}
return (TreeNodeSelectAction)o;
}
set {
ViewState["SelectAction"] = value;
}
}
///
/// Gets and sets whether the TreeNodeBinding has a CheckBox
///
[DefaultValue(typeof(Nullable), "")]
[WebCategory("DefaultProperties")]
[WebSysDescription(SR.TreeNodeBinding_ShowCheckBox)]
public bool? ShowCheckBox {
get {
object o = ViewState["ShowCheckBox"];
if (o == null) {
return null;
}
return (bool?)o;
}
set {
ViewState["ShowCheckBox"] = value;
}
}
///
/// Gets and sets the target window that the TreeNodeBinding will browse to if selected
///
[DefaultValue("")]
[WebCategory("DefaultProperties")]
[WebSysDescription(SR.TreeNodeBinding_Target)]
public string Target {
get {
string s = (string)ViewState["Target"];
if (s == null) {
return String.Empty;
}
return s;
}
set {
ViewState["Target"] = value;
}
}
[
DefaultValue(""),
TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign),
WebCategory("Databindings"),
WebSysDescription(SR.TreeNodeBinding_TargetField),
]
public string TargetField {
get {
string s = (string)ViewState["TargetField"];
if (s == null) {
return String.Empty;
}
else {
return s;
}
}
set {
ViewState["TargetField"] = value;
}
}
///
/// Gets and sets the display text
///
[DefaultValue("")]
[Localizable(true)]
[WebCategory("DefaultProperties")]
[WebSysDescription(SR.TreeNodeBinding_Text)]
public string Text {
get {
string s = (string)ViewState["Text"];
if (s == null) {
s = (string)ViewState["Value"];
if (s == null) {
return String.Empty;
}
}
return s;
}
set {
ViewState["Text"] = value;
}
}
///
/// Get and sets the fieldname to use for the Text property in a TreeNode
///
[
DefaultValue(""),
TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign),
WebCategory("Databindings"),
WebSysDescription(SR.TreeNodeBinding_TextField),
]
public string TextField {
get {
string s = (string)ViewState["TextField"];
if (s == null) {
return String.Empty;
}
else {
return s;
}
}
set {
ViewState["TextField"] = value;
}
}
///
/// Gets and sets the TreeNodeBinding tooltip
///
[DefaultValue("")]
[Localizable(true)]
[WebCategory("DefaultProperties")]
[WebSysDescription(SR.TreeNodeBinding_ToolTip)]
public string ToolTip {
get {
string s = (string)ViewState["ToolTip"];
if (s == null) {
return String.Empty;
}
return s;
}
set {
ViewState["ToolTip"] = value;
}
}
///
/// Get and sets the fieldname to use for the ToolTip property in a TreeNode
///
[
DefaultValue(""),
TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign),
WebCategory("Databindings"),
WebSysDescription(SR.TreeNodeBinding_ToolTipField),
]
public string ToolTipField {
get {
string s = (string)ViewState["ToolTipField"];
if (s == null) {
return String.Empty;
}
else {
return s;
}
}
set {
ViewState["ToolTipField"] = value;
}
}
///
/// Gets and sets the value
///
[DefaultValue("")]
[Localizable(true)]
[WebCategory("DefaultProperties")]
[WebSysDescription(SR.TreeNodeBinding_Value)]
public string Value {
get {
string s = (string)ViewState["Value"];
if (s == null) {
s = (string)ViewState["Text"];
if (s == null) {
return String.Empty;
}
}
return s;
}
set {
ViewState["Value"] = value;
}
}
///
/// Get and sets the fieldname to use for the Value property in a TreeNode
///
[
DefaultValue(""),
TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign),
WebCategory("Databindings"),
WebSysDescription(SR.TreeNodeBinding_ValueField),
]
public string ValueField {
get {
string s = (string)ViewState["ValueField"];
if (s == null) {
return String.Empty;
}
else {
return s;
}
}
set {
ViewState["ValueField"] = value;
}
}
///
/// The state for this TreeNodeBinding
///
private StateBag ViewState {
get {
if (_viewState == null) {
_viewState = new StateBag();
if (_isTrackingViewState) {
((IStateManager)_viewState).TrackViewState();
}
}
return _viewState;
}
}
internal void SetDirty() {
ViewState.SetDirty(true);
}
public override string ToString() {
return (String.IsNullOrEmpty(DataMember) ?
SR.GetString(SR.TreeNodeBinding_EmptyBindingText) :
DataMember);
}
#region ICloneable implemention
///
///
/// Creates a clone of the TreeNodeBinding.
///
object ICloneable.Clone() {
TreeNodeBinding clone = new TreeNodeBinding();
clone.DataMember = DataMember;
clone.Depth = Depth;
clone.FormatString = FormatString;
clone.ImageToolTip = ImageToolTip;
clone.ImageToolTipField = ImageToolTipField;
clone.ImageUrl = ImageUrl;
clone.ImageUrlField = ImageUrlField;
clone.NavigateUrl = NavigateUrl;
clone.NavigateUrlField = NavigateUrlField;
clone.PopulateOnDemand = PopulateOnDemand;
clone.SelectAction = SelectAction;
clone.ShowCheckBox = ShowCheckBox;
clone.Target = Target;
clone.TargetField = TargetField;
clone.Text = Text;
clone.TextField = TextField;
clone.ToolTip = ToolTip;
clone.ToolTipField = ToolTipField;
clone.Value = Value;
clone.ValueField = ValueField;
return clone;
}
#endregion
#region IStateManager implementation
///
bool IStateManager.IsTrackingViewState {
get {
return _isTrackingViewState;
}
}
///
void IStateManager.LoadViewState(object state) {
if (state != null) {
((IStateManager)ViewState).LoadViewState(state);
}
}
///
object IStateManager.SaveViewState() {
if (_viewState != null) {
return ((IStateManager)_viewState).SaveViewState();
}
return null;
}
///
void IStateManager.TrackViewState() {
_isTrackingViewState = true;
if (_viewState != null) {
((IStateManager)_viewState).TrackViewState();
}
}
#endregion
#region IDataSourceViewSchemaAccessor implementation
///
object IDataSourceViewSchemaAccessor.DataSourceViewSchema {
get {
return ViewState["IDataSourceViewSchemaAccessor.DataSourceViewSchema"];
}
set {
ViewState["IDataSourceViewSchemaAccessor.DataSourceViewSchema"] = value;
}
}
#endregion
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ActivityTypeDesigner.xaml.cs
- DocumentPropertiesDialog.cs
- TextDecorationUnitValidation.cs
- XmlCharacterData.cs
- DesignerDataSchemaClass.cs
- SoapAttributes.cs
- PropertyChangingEventArgs.cs
- CompositeControl.cs
- _SSPISessionCache.cs
- Int32Rect.cs
- FixedDocumentSequencePaginator.cs
- NullableIntSumAggregationOperator.cs
- BaseCollection.cs
- SchemaDeclBase.cs
- OraclePermissionAttribute.cs
- SystemResourceKey.cs
- SqlDataSourceConnectionPanel.cs
- PerformanceCounterPermissionAttribute.cs
- FontFamily.cs
- GraphicsPathIterator.cs
- XmlConvert.cs
- HasCopySemanticsAttribute.cs
- EndPoint.cs
- ImageMetadata.cs
- MatrixTransform3D.cs
- Separator.cs
- StringUtil.cs
- SR.cs
- EndEvent.cs
- CssStyleCollection.cs
- FolderNameEditor.cs
- hresults.cs
- ObjectViewEntityCollectionData.cs
- NullableDoubleAverageAggregationOperator.cs
- GridViewUpdateEventArgs.cs
- GenericTypeParameterBuilder.cs
- ValueExpressions.cs
- WebRequestModuleElement.cs
- HtmlTextArea.cs
- SortedDictionary.cs
- ObfuscateAssemblyAttribute.cs
- OdbcStatementHandle.cs
- Parameter.cs
- WmlTextViewAdapter.cs
- SamlSerializer.cs
- BoundsDrawingContextWalker.cs
- MDIControlStrip.cs
- TextDecorationLocationValidation.cs
- RectConverter.cs
- DummyDataSource.cs
- SystemColors.cs
- latinshape.cs
- DBSchemaRow.cs
- DictionaryKeyPropertyAttribute.cs
- MailWebEventProvider.cs
- DataGridRowHeader.cs
- MissingManifestResourceException.cs
- PersistenceProviderBehavior.cs
- WorkflowNamespace.cs
- PageThemeBuildProvider.cs
- Triplet.cs
- RawStylusActions.cs
- PriorityBindingExpression.cs
- Soap.cs
- CacheHelper.cs
- EraserBehavior.cs
- SizeLimitedCache.cs
- DataService.cs
- BinaryFormatter.cs
- OuterGlowBitmapEffect.cs
- SQLBinaryStorage.cs
- SplineKeyFrames.cs
- MapPathBasedVirtualPathProvider.cs
- Identity.cs
- WSIdentityFaultException.cs
- DispatchRuntime.cs
- ExtensionDataReader.cs
- CryptoHandle.cs
- XslTransform.cs
- XmlName.cs
- SpecialNameAttribute.cs
- FaultHandlingFilter.cs
- SafeEventHandle.cs
- TemplateInstanceAttribute.cs
- BaseCollection.cs
- PartitionedDataSource.cs
- XamlFilter.cs
- PathSegmentCollection.cs
- SchemaElementLookUpTableEnumerator.cs
- TypeConverterMarkupExtension.cs
- ReliabilityContractAttribute.cs
- FunctionDescription.cs
- RichTextBoxAutomationPeer.cs
- UnorderedHashRepartitionStream.cs
- DataRelationPropertyDescriptor.cs
- OdbcException.cs
- ContainerUtilities.cs
- PipelineModuleStepContainer.cs
- glyphs.cs
- XpsTokenContext.cs