webForumDet fria alternativet

kompileringsfel inaccessible due to its protection level

.NET

2 svar · 272 visningar · startad av Bjuris

Medlem sedan juli 2001514 inlägg
Frågan#1

Jag får ett kompileringsfel när jag försöker accessa en klass från min code behind fil (c#):

'personal.start.SelectionChanged(object, System.EventArgs)' is inaccessible due to its protection level

Vad beror detta på?
Min aspx fil ärver från samma namespace och klass så det borde väl fungera?

aspx fil:
överst så står det:

<%@ Page language="c#" Codebehind="default.aspx.cs" AutoEventWireup="false" Inherits="personal.start" %>

sen så står det följande i min calendar

OnSelectionChanged="SelectionChanged"

I min codebehind fil så finns

void SelectionChanged(object s, EventArgs e)

under klassen som heter start i namespacet personal

Vad gör jag för fel?

Skippa detta inlägg, min function var ej public...

Medlem sedan apr. 2004778 inlägg
#2

din SelecionChanged måste vara public annars kommer inte .aspx sidan åt den.

Medlem sedan maj 20012 812 inlägg
#3

din SelecionChanged måste vara public annars kommer inte .aspx sidan åt den

Jag föreslår Protected istället, då ASPX sidan ärver från codebehind sidan, så är det bättre med protected. Även om jag har svårt att tänka mig att något annat program någonsin skulle vilja utnyttja funktionen på något elaktsätt.

- M

268 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
132 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)