Har lite kod här som skall vara på en och samma. De båda scripten inehåller båda page_loads. Hur gör jag för att detta skall fungera? Varför dubbelpostar du så mycket? Är det inte din 3:e tråd om samma sak? Kanske dumt gjort. Två trådar om samma sak sak, den tredje och första handlade ju inte om samma sak. Anledningen att jag postade denna igen är att jag tyckte rubriken på förra var så pass otydlig och att jag märkte att det var en del fel i koden jag skrivit i den. De två olika scripten fungerade inte ens var för sig, det tror jag de gör nu. Ok, TACK! Nu förstod jag lite bättre. Fungerade först inte men när jag ändrade "Private void Page_Load" till "public void Page_Load" så fungerade det.två page_load på en och samma sida (C#)
Script #1:
<code>
<script runat = "server">
private void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
BindGrid();
}
private void BindGrid()
{
DataTable table = new DataTable("Users");
table.Columns.Add("firstName");
table.Columns.Add("lastName");
table.Columns.Add("emailAddress");
AddRow(table, "Bugs", "Bunny", "bbunny@wb.com");
AddRow(table, "Mickey", "Mouse", "mmouse@disney.com");
AddRow(table, "Donald", "Duck", "dduck@disney.com");
AddRow(table, "Dan", "Marino", "dmarino@dolphins.com");
AddRow(table, "Steve", "Stchur", "sstchur@yahoo.com");
myGrid.DataSource = new DataView(table);
myGrid.DataBind();
}
private void AddRow(DataTable table, string firstName,
string lastName, string email)
{
DataRow row = table.NewRow();
row["firstName"] = firstName;
row["lastName"] = lastName;
row["emailAddress"] = email;
table.Rows.Add(row);
}
</script>
</code>
Script #2:
<code>
<script runat="server">
private void Page_Load(object Source, EventArgs e){
HttpBrowserCapabilities bc = Request.Browser;
if (bc.Browser == "IE") {
css1.Text = "<LINK rel='stylesheet' type='text/css' href='css_ie.css'>";
} else if (bc.Browser == "Netscape") {
css1.Text = "<LINK rel='stylesheet' type='text/css' href='css_netscape.css'>";
} else if (bc.Browser == "Opera") {
css1.Text = "<LINK rel='stylesheet' type='text/css' href='css_opera.css'>";
}
}
</script>
</code>Sv: två page_load på en och samma sida (C#)
Återgå till den senaste tråden där jag hjälpte dig.
/mSv:två page_load på en och samma sida (C#)
Är inte min mening att sabba här på forumet, ledsen om jag gjort det. Men jag är väldigt ivrig i min strävan i att lösa detta problem och eftersom jag är helt ny på det här med asp.net så förstod jag inte heller dina svar i den andra tråden.Sv: två page_load på en och samma sida (C#)
Om vi börjar om från början då.
<script runat="server">
Private void Page_Load() {
MySubOne(); // Då körs den suben.
MySubTwo(); // Då körs den suben.
// Båda körs i Page_Load.
}
void MySubOne() {
Label1.Text = "Första suben körs";
}
void MySubTwo() {
Label2.Text = "Andra suben körs";
MySubThree(); // Nu körs den suben.
}
void MySubThree() {
Label3.Text = "Den Tredje körs nu";
}
</script>
<form ... runat="server">
<asp:Label ID="Label1" Runat="server"/>
<asp:Label ID="Label2" Runat="server"/>
<asp:Label ID="Label3" Runat="server"/>
</form>
Hoppas du förstod lite mer, men tyvärr är jag inte den bästa att förklara saker.
/m
Sv:två page_load på en och samma sida (C#)
Så här ser koden ut:
<code>
<script runat="server">
public void Page_Load(Object sender, EventArgs E) {
MySubOne(); // Då körs den suben.
MySubTwo(); // Då körs den suben.
// Båda körs i Page_Load.
}
void MySubOne() {
HttpBrowserCapabilities bc = Request.Browser;
if (bc.Browser == "IE") {
css1.Text = "<LINK rel='stylesheet' type='text/css' href='css_ie.css'>";
} else if (bc.Browser == "Netscape") {
css1.Text = "<LINK rel='stylesheet' type='text/css' href='css_netscape.css'>";
} else if (bc.Browser == "Opera") {
css1.Text = "<LINK rel='stylesheet' type='text/css' href='css_opera.css'>";
}
}
void MySubTwo() {
if (!Page.IsPostBack)
BindGrid();
}
private void BindGrid()
{
DataTable table = new DataTable("Users");
table.Columns.Add("firstName");
table.Columns.Add("lastName");
table.Columns.Add("emailAddress");
AddRow(table, "Bugs", "Bunny", "bbunny@wb.com");
AddRow(table, "Mickey", "Mouse", "mmouse@disney.com");
AddRow(table, "Donald", "Duck", "dduck@disney.com");
AddRow(table, "Dan", "Marino", "dmarino@dolphins.com");
AddRow(table, "Steve", "Stchur", "sstchur@yahoo.com");
myGrid.DataSource = new DataView(table);
myGrid.DataBind();
}
private void AddRow(DataTable table, string firstName,
string lastName, string email)
{
DataRow row = table.NewRow();
row["firstName"] = firstName;
row["lastName"] = lastName;
row["emailAddress"] = email;
table.Rows.Add(row);
}
</script>
</code>