0
Compiler Error Message: CS0122: 'Controls_Arcade_StarDisplay.Stars' is inaccessible due to its protection level

他のSOスレッドをチェックしましたが、あまり意味がありません。このコントロールは別の webusercontrol 内で使用されています。何かしようとすると、このエラーがスローされます。問題のクラスは次のとおりです。

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="StarDisplay.ascx.cs" Inherits="Controls_Arcade_StarDisplay" %>
<asp:Panel runat="server" ID="Stars" />

コードビハインド:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Runtime.CompilerServices;

public partial class Controls_Arcade_StarDisplay : System.Web.UI.UserControl
{
    public double Rating { get; set; }
    public string Tooltip { get; set; }

    protected void Page_Load(object sender, EventArgs e)
    {
        string CSSClass = "star-rating s-";
        if (Rating < 0.25)
            CSSClass += "0";
        else if (Rating < 0.75)
            CSSClass += "05";
        else if (Rating < 1.25)
            CSSClass += "1";
        else if (Rating < 1.75)
            CSSClass += "15";
        else if (Rating < 2.25)
            CSSClass += "2";
        else if (Rating < 2.75)
            CSSClass += "25";
        else if (Rating < 3.25)
            CSSClass += "3";
        else if (Rating < 3.75)
            CSSClass += "35";
        else if (Rating < 4.25)
            CSSClass += "4";
        else if (Rating < 4.75)
            CSSClass += "4";
        else if (Rating < 1.25)
            CSSClass += "1";
        else if (Rating < 4.75)
            CSSClass += "45";
        else
            CSSClass += "5";
        Stars.CssClass = CSSClass;

        if (Tooltip != null)
            Stars.ToolTip = Tooltip;
    }
}

コントロールは web.config に登録されています。

    <pages validateRequest="false" smartNavigation="false" clientIDMode="Static">
        <controls>
            <add tagPrefix="Scirra" src="~/Controls/Arcade/GameOverview.ascx" tagName="GameOverview"/>
            <add tagPrefix="Scirra" src="~/Controls/Arcade/Stars/StarDisplay.ascx" tagName="StarDisplay"/>
        </controls>
    </pages>

開始表示コントロールは、ゲーム オーバービュー コントロール内に表示されます。

助けてくれてありがとう、完全に立ち往生!他の質問は、私が理解できないコントロールのプロパティを取得すること、または私が見つけることができないデザイナーで何かを変更することに言及しています。

4

2 に答える 2

0

コントロールで同じエラーメッセージが表示されました。コード ファイルを調べると、答えが明らかになりました。手順は として定義されましvoid Register_Submit()た。public私はその定義に追加したので、それになりPublic void Register_Submit()、エラーはなくなりました。

于 2014-03-01T22:03:11.517 に答える