1

特定のユーザー コントロールに次の問題があります。

design view白く表示され、( ).( design time)内にコントロールがまったく表示されません。

しかしソース:

<%@ Control Language="C#" AutoEventWireup="True" CodeBehind="Follow_New.ascx.cs"
    Inherits="DFUI.UserControls.Follow_New" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Assembly="MattBerseth.WebControls" Namespace="MattBerseth.WebControls"
    TagPrefix="mb" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
.
.
.
.
.

ソース ビューに問題があるのではなく、デザイン ビューで編集するすべてのコントロールを表示する方法の問題は何ですか?

4

3 に答える 3

1

デザイン ビューがオンになっていることを確認しましたか? [オプションに移動] > [すべての設定を表示] > [HTML デザイナー] までスクロール > [HTML デザイナーを有効にする] を選択します (VS を再起動する必要があります)

別の理由として、HTML が壊れている可能性があります。ASCX を開いて (コード ビハインドではありません)、 +を押してからCTRL+Kを押します。CTRLD

于 2013-04-30T11:18:34.557 に答える
1

コントロールをツールボックスに表示しようとしている場合は、参照している dll をツールボックスに手動で追加する必要がある場合があります。ツールボックスを右クリックして、参照している dll の場所を参照し、必要なものを選択します。これにより、適切にマークされた (@gregor-primar が説明する方法でマークされた) コントロールがツールボックスに表示されます。

于 2013-04-30T12:58:28.743 に答える
1

コントロールをデザイン ビュー内で確実に「表示」できるようにする方法の 1 つは、次のように render をオーバーライドすることです。

    protected override void Render(System.Web.UI.HtmlTextWriter writer)
    {
        if (this.DesignMode)
        {
            //render control for designer...
            writer.Write(string.Format("<div>{0}</div>", this.ID));
        }
        else
        {
            //render actual control in runtime...
            base.Render(writer);
        }
    } 

デザイナー内でコントロールの編集を有効にするには、INamingContainer から継承する必要があります。簡単なデモを次に示します。

[ToolboxData("<{0}:TabContainer runat=server></{0}:TabContainer>")]
[ParseChildren(ChildrenAsProperties = false)]
[PersistChildren(true)]
public class TabContainer : Panel, INamingContainer
{

    List<TabItem> tabs = new List<TabItem>();

    [Browsable(true)]
    [PersistenceMode(PersistenceMode.InnerProperty)]
    public List<TabItem> Tabs
    {
        get { return this.tabs; }
    }
}

public class TabItem : Panel, IPostBackEventHandler
{

    public event EventHandler Click;

}

したがって、デザイン ビューは次のようになります。

        <cc1:TabContainer ID="TabContainer1" runat="server">
            <Tabs>
                <cc1:TabItem ID="TabFirst" />
                <cc1:TabItem ID="TabSecond" />
            </Tabs>
        </cc1:TabContainer>

お役に立てれば!

于 2013-04-29T14:28:30.003 に答える