當前位置: 首頁>>代碼示例>>C#>>正文


C# RowToFieldTransformer類代碼示例

本文整理匯總了C#中System.Web.UI.WebControls.WebParts.RowToFieldTransformer的典型用法代碼示例。如果您正苦於以下問題:C# RowToFieldTransformer類的具體用法?C# RowToFieldTransformer怎麽用?C# RowToFieldTransformer使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


RowToFieldTransformer類屬於System.Web.UI.WebControls.WebParts命名空間,在下文中一共展示了RowToFieldTransformer類的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: RowProviderWebPart

//引入命名空間
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Reflection;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

//This sample code creates a Web Parts control that acts as a provider of row data.
namespace Samples.AspNet.CS.Controls
{
    public sealed class RowProviderWebPart : WebPart, IWebPartRow
    {
        private DataTable _table;

        public RowProviderWebPart()
        {
            _table = new DataTable();

            DataColumn col = new DataColumn();
            col.DataType = typeof(string);
            col.ColumnName = "Name";
            _table.Columns.Add(col);

            col = new DataColumn();
            col.DataType = typeof(string);
            col.ColumnName = "Address";
            _table.Columns.Add(col);

            col = new DataColumn();
            col.DataType = typeof(int);
            col.ColumnName = "ZIP Code";
            _table.Columns.Add(col);

            DataRow row = _table.NewRow();
            row["Name"] = "John Q. Public";
            row["Address"] = "123 Main Street";
            row["ZIP Code"] = 98000;
            _table.Rows.Add(row);
        }
        
        [ConnectionProvider("Row")]
        public IWebPartRow GetConnectionInterface()
        {
            return new RowProviderWebPart();
        }
        
        public PropertyDescriptorCollection Schema
        {
            get
            {
                return TypeDescriptor.GetProperties(_table.DefaultView[0]);
            }
        }
        
        public void GetRowData(RowCallback callback)
        {
            callback(_table.DefaultView[0]);
        }          
    }
}
開發者ID:.NET開發者,項目名稱:System.Web.UI.WebControls.WebParts,代碼行數:63,代碼來源:RowToFieldTransformer

示例2: GetFieldValue

//引入命名空間
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Reflection;
using System.Web;
using System.Web.UI;
using System.Security.Permissions;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

namespace Samples.AspNet.CS.Controls
{
    
    // This sample code creates a Web Parts control that acts
    // as a consumer of an IField interface.

    // A consumer WebPart control that consumes strings.
    [AspNetHostingPermission(SecurityAction.Demand,
      Level = AspNetHostingPermissionLevel.Minimal)]
    [AspNetHostingPermission(SecurityAction.InheritanceDemand,
      Level = AspNetHostingPermissionLevel.Minimal)]
    public class FieldConsumerWebPart : WebPart
    {
        private IWebPartField _provider;
        private object _fieldValue;

        private void GetFieldValue(object fieldValue)
        {
            _fieldValue = fieldValue;
        }

        public bool ConnectionPointEnabled
        {
            get
            {
                object o = ViewState["ConnectionPointEnabled"];
                return (o != null) ? (bool)o : true;
            }
            set
            {
                ViewState["ConnectionPointeEnabled"] = value;
            }
        }

        protected override void OnPreRender(EventArgs e)
        {
            if (_provider != null)
            {
                _provider.GetFieldValue(new FieldCallback(GetFieldValue));
            }
            base.OnPreRender(e);
        }

        protected override void RenderContents(HtmlTextWriter writer)
        {

            if (_provider != null)
            {
                PropertyDescriptor prop = _provider.Schema;

                if (prop != null && _fieldValue != null)
                {
                    writer.Write(prop.DisplayName + ": " + _fieldValue);
                }
                else
                {
                    writer.Write("No data");
                }
            }
            else
            {
                writer.Write("Not connected");
            }
        }
        
        [ConnectionConsumer("Field")]
        public void SetConnectionInterface(IWebPartField provider)
        {
            _provider = provider;
        }

        private class FieldConsumerConnectionPoint : ConsumerConnectionPoint
        {
            public FieldConsumerConnectionPoint(MethodInfo callbackMethod, Type interfaceType, Type controlType,
                 string name, string id, bool allowsMultipleConnections)
                : base(callbackMethod, interfaceType, controlType,
                       name, id, allowsMultipleConnections)
            {
            }

            public override bool GetEnabled(Control control)
            {
                return ((FieldConsumerWebPart)control).ConnectionPointEnabled;
            }
        }
    }
}
開發者ID:.NET開發者,項目名稱:System.Web.UI.WebControls.WebParts,代碼行數:99,代碼來源:RowToFieldTransformer


注:本文中的System.Web.UI.WebControls.WebParts.RowToFieldTransformer類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。