Sorry about the multi post, I thought I'd sent to both groups simultaneously but
somehow it failed to find this one the first time.
I'm having a problem binding an asp:repeater control to a Hashtable. Originally
my code was:
<asp:Repeater id="rptFamily" runat="server" DataSource="<%# family %>">
<ItemTemplate >
<%# DataBinder.Eval (Container.Data Item, "Key") %> =
<%# DataBinder.Eval (Container.Data Item, "Value") %>
</ItemTemplate>
</asp:Repeater>
which was bound to a Hashtable and all works fine. I then started reading that
Databind.Eval was an overkill, I could just use:
<asp:Repeater id="rptFamily" runat="server" DataSource="<%# family %>">
<ItemTemplate >
<%# Container.DataI tem.Key %> =
<%# Container.DataI tem.Value %>
</ItemTemplate>
</asp:Repeater>
but although I can build the site when accessing the page I get an error that :
'object' does not contain a definition for 'Key'
pointing to the first changed line. I've found lots of examples on the Web
showing this second version, are they all perhaps from a beta version or is it
something else?
Thanks
--
Joe 3 2531
Joe:
Try:
<%# ((DictionaryEnt ry)Container.Da taItem).Key %>
<%# ((DictionaryEnt ry)Container.Da taItem).Value%>
Container.DataI tem is of type object
object doesn't container a "key" or "value" property
You need to explicitely cast it to the underlying type that is being bound.
When you are binding to a DataSet/DataTable/DataView, Container.DataI tem is
always a "DataRowView".. .
DataBinder.Eval does have performance implications, but on the flip side it
lets you change the underlying datasource implementation without breaking
your code...ie, using DataBinder.Eval you could switch to a dataset, and as
long as it had a property named "key" and "value" everything would continue
to work...
Karl
--
MY ASP.Net tutorials http://www.openmymind.net/ - New and Improved (yes, the popup is annoying) http://www.openmymind.net/faq.aspx - unofficial newsgroup FAQ (more to
come!)
"Joe Fawcett" <jo********@new sgroups.nospam> wrote in message
news:%2******** ********@TK2MSF TNGP15.phx.gbl. .. Sorry about the multi post, I thought I'd sent to both groups
simultaneously but somehow it failed to find this one the first time.
I'm having a problem binding an asp:repeater control to a Hashtable.
Originally my code was:
<asp:Repeater id="rptFamily" runat="server" DataSource="<%# family %>"> <ItemTemplate > <%# DataBinder.Eval (Container.Data Item, "Key") %> = <%# DataBinder.Eval (Container.Data Item, "Value") %> </ItemTemplate> </asp:Repeater>
which was bound to a Hashtable and all works fine. I then started reading
that Databind.Eval was an overkill, I could just use:
<asp:Repeater id="rptFamily" runat="server" DataSource="<%# family %>"> <ItemTemplate > <%# Container.DataI tem.Key %> = <%# Container.DataI tem.Value %> </ItemTemplate> </asp:Repeater>
but although I can build the site when accessing the page I get an error
that : 'object' does not contain a definition for 'Key'
pointing to the first changed line. I've found lots of examples on the Web showing this second version, are they all perhaps from a beta version or
is it something else?
Thanks
--
Joe
"Karl Seguin" <karl REMOVE @ REMOVE openmymind REMOVEMETOO . ANDME net> wrote in
message news:uu******** ******@tk2msftn gp13.phx.gbl... Joe:
Try:
<%# ((DictionaryEnt ry)Container.Da taItem).Key %> <%# ((DictionaryEnt ry)Container.Da taItem).Value%>
Container.DataI tem is of type object object doesn't container a "key" or "value" property
You need to explicitely cast it to the underlying type that is being bound. When you are binding to a DataSet/DataTable/DataView, Container.DataI tem is always a "DataRowView".. .
DataBinder.Eval does have performance implications, but on the flip side it lets you change the underlying datasource implementation without breaking your code...ie, using DataBinder.Eval you could switch to a dataset, and as long as it had a property named "key" and "value" everything would continue to work...
Karl -- MY ASP.Net tutorials http://www.openmymind.net/ - New and Improved (yes, the popup is annoying) http://www.openmymind.net/faq.aspx - unofficial newsgroup FAQ (more to come!)
Thanks, it works. So does that mean that the example code I've seen, using a
HashTable, was wrong?
--
Joe
Since I haven't seen the example code, I can't really say...
Karl
--
MY ASP.Net tutorials http://www.openmymind.net/ - New and Improved (yes, the popup is annoying) http://www.openmymind.net/faq.aspx - unofficial newsgroup FAQ (more to
come!)
"Joe Fawcett" <jo********@new sgroups.nospam> wrote in message
news:u8******** ******@TK2MSFTN GP10.phx.gbl... "Karl Seguin" <karl REMOVE @ REMOVE openmymind REMOVEMETOO . ANDME net>
wrote in message news:uu******** ******@tk2msftn gp13.phx.gbl... Joe:
Try:
<%# ((DictionaryEnt ry)Container.Da taItem).Key %> <%# ((DictionaryEnt ry)Container.Da taItem).Value%>
Container.DataI tem is of type object object doesn't container a "key" or "value" property
You need to explicitely cast it to the underlying type that is being
bound. When you are binding to a DataSet/DataTable/DataView, Container.DataI tem
is always a "DataRowView".. .
DataBinder.Eval does have performance implications, but on the flip side
it lets you change the underlying datasource implementation without
breaking your code...ie, using DataBinder.Eval you could switch to a dataset, and
as long as it had a property named "key" and "value" everything would
continue to work...
Karl -- MY ASP.Net tutorials http://www.openmymind.net/ - New and Improved (yes, the popup is
annoying) http://www.openmymind.net/faq.aspx - unofficial newsgroup FAQ (more to come!)
Thanks, it works. So does that mean that the example code I've seen, using
a HashTable, was wrong?
--
Joe
This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: Joe Fawcett |
last post by:
I'm having a problem binding an asp:repeater control to a Hashtable. Originally
my code was:
<asp:Repeater id="rptFamily" runat="server" DataSource="<%# family %>">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "Key") %> =
<%# DataBinder.Eval(Container.DataItem, "Value") %>
</ItemTemplate>
</AlternatingItemTemplate>
</asp:Repeater>
|
by: Peter Kirk |
last post by:
Hi
are there any "gotchas" with using an asp:repeater that means that the
"onclick" method of a LinkButton created in the repaeter does not fire?
I at least cannot get it to work. I have a webpage where the user can enter
some search criteria (via dropdowns and textboxes) and then perform a search
and have results presented. The results list includes linkbuttons which the
user can click on to obtain more detailed results.
|
by: Scott Lyon |
last post by:
I am having a strange problem. The program is a bit complex, but I'll try to
simplify what I can. I apologize if this is complicated, but I think this
would still be simpler than posting a bunch of source code. If you want me
to post code, though, just say so.
In a nutshell, I've got an ASP.NET application that has one main ASPX page.
On that ASPX page, it has a user control (an ASCX) that displays the actual
data and controls I need.
|
by: Eric |
last post by:
Hello,
I have the following dataset that I want to bind to a repeater to be
displayed as a table.
Owner Animal Volume
---------------------------
Eric Dog 6
Eric Cat 3
Eric Gerbil 1
Eric Bird 10
|
by: Kelly Leahy |
last post by:
I'm using an Asp:Repeater control with a text box in the
item templates. This is for a system that has a number
of items that the user can edit and I'd like to generate
them based on a list. However, when the user clicks a
save button (not in the asp:repeater, but on the form
itself) I would like to (on postback) update the values
in the database and redisplay the page.
I can't figure out how to reference the controls
generated by...
| |
by: dhnriverside |
last post by:
Hi
I'm using an asp:repeater and its DataSource/DataBind system to show a
number of records from the database. I want to highlight the latest record
(which will be the highest ID).
Any thoughts on how to do this with the repeater?
Cheers
|
by: Fred Dag |
last post by:
As far as I can work out when using the OnTextChanged event I cannot get the
TextBox and Labels values when the event fires as they are populated by a
<asp:repeater and so don't have values.
If I try to give the repeater values by removing
if (!IsPostBack)
{}
from the
|
by: Timbo |
last post by:
Hi all,
This is my first message here so i'll try and include all the
information that will help you help me out, if possible.
Basically I am using C# in ASP.NET 2.0 and have a Repeater control in
my aspx page with two image buttons, one for an edit command, another a
delete command. Here is a cut down code fragment.
...
|
by: bissatch |
last post by:
Hi,
I am trying to output a list of checkboxes. Using ASP .NET controls, I
was able to create the following:
<label for="colour_red">Red: </label><asp:CheckBox ID="colour_red"
runat="server" /><br />
<label...
<label...
<label...
|
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look !
Part I. Meaning of...
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it.
First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
| |
by: jinu1996 |
last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth.
The Art of Business Website Design
Your website is...
|
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
|
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own....
Now, this would greatly impact the work of software developers. The idea...
|
by: conductexam |
last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one.
At the time of converting from word file to html my equations which are in the word document file was convert into image.
Globals.ThisAddIn.Application.ActiveDocument.Select();...
|
by: TSSRALBI |
last post by:
Hello
I'm a network technician in training and I need your help.
I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs.
The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols.
I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
| |
by: bsmnconsultancy |
last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...
| |