Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 852
  • Last Modified:

user control public properties unaccessible from codebehind

I have a user control that I cannot access the public properties. I have given it a classname directive and it still does not show up in my codebehind.

I have scoured this site and all over looking for solutions. Everything I read shows me this is a nobrainer, so there is obviously something I'm missing.

Any ideas?

Attached is the user control snippet
<%@ Control Language="C#" ClassName="WxViewer" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="Weather" %>
 
<script language="c#" runat="server">
 
    private Decimal _latitude = new Decimal(35.47);
    private Decimal _longtitude = new Decimal(-97.45);
    private string _areaname = "Enid";
    
    private string _cssClassWarm = "Warm";
    private string _cssClassCold = "Cold";
    private string _cssClassNormal = "Normal";
 
    private Unit _width = Unit.Parse("50%");
 
    
    public string longtitude
    { set { _longtitude = Decimal.Parse(value); } }
 
    public string latitude
    { set { _latitude = Decimal.Parse(value); } }
 
    public string areaName
    { set { _areaname = value; }
        get { return _areaname; }    
    }
    
   <<<<< snip >>>>>>>
    
</script>
 
<h1><asp:label runat="server" ID="lblAreaName"/> Area Weather Outlook</h1>
<p>
    <asp:Table runat="server" ID="WeatherTable" />
    <asp:Label runat="server" ID="WeatherLabel" Visible="false" Text="Weather Information Currently Not Available." />
</p>

Open in new window

0
jackmac4
Asked:
jackmac4
  • 5
1 Solution
 
jackmac4Author Commented:
Here in the default codebehind, I cannot access WxControl properties. They are not available.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
namespace PANDK
{
    public partial class Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!string.IsNullOrEmpty(ReadCookie("PANDK_Location")))
            {
                
            }
        
        }
 
<<< snip >>>

Open in new window

0
 
jackmac4Author Commented:
finally, here is the main page code
<%@ Page Title="" Language="C#" Trace="false" MasterPageFile="~/PK.Master" AutoEventWireup="false" CodeBehind="Default.aspx.cs" Inherits="PANDK.Default" %>
<%@ Register TagPrefix="Wx" TagName="Viewer" Src="~/ctrl/WxViewer.ascx" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    <div id="Weather" class="sectionHeaderBig">
        <Wx:Viewer id="WxControl" runat="server" latitude="36.41" longtitude="-97.89" width="465px" areaName="Enid" />

Open in new window

0
 
jackmac4Author Commented:
Am I not making sense or is there some clarification I could give to help someone help me?
0
Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

 
RamuncikasCommented:

WxViewer myControl = (WxViewer)this.Content2.FindControl("WxControl");
myControl.latitude = "10";

Open in new window

0
 
jackmac4Author Commented:
Yes, this would be the way to do it if it worked - but WxViewer class isn't showing up. I cant access it. I can access the WxControl control, but the properties aren't showing up.

I'm using VWD2008.
0
 
jackmac4Author Commented:
I found the problem - I was using an older style user control without a codebehind. Once I rewrote the control with a codebehind everything seems good.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 5
Tackle projects and never again get stuck behind a technical roadblock.
Join Now