Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

public variables in asp.net?

2 views
Skip to first unread message

Web Search Store

unread,
Apr 18, 2008, 3:01:05 PM4/18/08
to
I am trying to make variables available in my web application by making
user controls

I classic asp I was able to put them all in an #include which made them
available throughout the asp script

So here's my example, 2 .ascx files, and I want to use a variable, like a
public variable, in the 2nd one (in the page load event)

Even though I make a public property in the first topdcl_try.ascx file, it
doesn't recognize it in the page load event.

Here is the page:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb"
Inherits="_Default" %>

<%@ Register TagPrefix="Utils" TagName="topdcl" Src="utils/topdcl_try.ascx"
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

<title>Untitled Page</title>

</head>

<body>


<form id="form1" runat="server">

<div>


</div>

</form>

<Utils:topdcl id="My_topdcl" runat="server"/>


</body>

</html>

---------------------------------------------

Here is the topdcl_try.ascx file:
------------------------------------------

<%@ Control ClassName="topdcl" %>

<script language="vb" runat="server">


Private m_addressesstring as String= "adr,phone,zip,"

Public Property addressesstring as String

Get

Return m_addressesstring

End Get

Set

m_addressesstring = Value

End Set

End Property


Public Sub topdcl1()


addressesstring= "adr,phone,zip,"


End Sub

</script>

.--------------------------------------
Here is the page load event:

---------------------------------------

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Handles Me.Load

My_topdcl.topdcl1()

Response.Write(addressesstring)

'My_w.w1()

End Sub

I get an error saying the addressstring variable is not declared. I was
hoping making a public property would make it available within the page, but
it doesn't.I guess I don't understand how these properties work.

As I said, in classic .asp I could put all the 'dim' statements at the top
in an include, and the whole asp page could access them.

Thanks for any help!

Scott Baxter


Norm

unread,
Apr 18, 2008, 3:55:13 PM4/18/08
to
On Apr 18, 12:01 pm, "Web Search Store" <i...@websearchstore.com>
wrote:

You need to reference the user control when accessing its public
property:

Change "Response.Write(addressesstring)" to
"Response.Write(My_topdcl.addressesstring)"

The error was telling you exactly what was happening. There was no
"addressstring" variable/property in scope.

Happy coding!

Web Search Store

unread,
Apr 18, 2008, 5:24:20 PM4/18/08
to
Thanks a lot!

Scott
"Norm" <neo...@gmail.com> wrote in message
news:ae0ed727-924b-4e39...@n14g2000pri.googlegroups.com...

0 new messages