Frågan 26 maj 2003 09:01 #1 Hej!
Sitter med en xml fil som ska läsas ut i en dropdownlist i en datagrid, någon som har erfarenhet av detta som kan hjälpa mig, snälla:) Sitter fast
NETwork Medlem sedan juni 2001 1 732 inlägg Läs in din xml i en array, en datatable eller liknande så kan du fylla din dropdownlist med den som vanligt. Det går säkert att läsa in en xml till en ddl direkt med en xml-reader eller nåt men jag vet inte exakt hur, är dålig på xml tyvärr.
cyprys Medlem sedan dec. 2000 3 563 inlägg ex.
Dim ds as new dataset()
ds.ReadXML(server.mappath("xmlfil.xml"))
DropDownListen.datasource = ds
DropDownListen.databind()
---
<asp:dropdownlist runat=server id=DropDownListen datatextfield="Texten/kolumn" datavaluefield="värdet/kolumn">
ska väll bara en funktion som ser ut så här?
public DataTable test
{
Dim ds as new dataset();
ds.ReadXML(server.mappath("lookup.xml"))
DropDownListen.datasource = ds;
ropDownListen.databind();
}
cyprys Medlem sedan dec. 2000 3 563 inlägg Mjo, men du har blandat c# och vb ganska friskt där ;)
tror det jag:) hur ska det kodas då
cyprys Medlem sedan dec. 2000 3 563 inlägg I Vb
Public Function FyllDropList()
Dim ds as new dataset()
ds.ReadXML(server.mappath("xmlfil.xml"))
DropDownListen.datasource = ds
DropDownListen.databind()
End Function
S borde väl duga.
cyprys Medlem sedan dec. 2000 3 563 inlägg Använder aldrig det men det kanske kan se ut såhär? (nån annan får fixa upp min röra sen) :)
Public FyllDropList {
new dataset() ds;
ds.ReadXML(server.mappath("xmlfil.xml"));
DropDownListen.datasource = ds;
DropDownListen.databind();
}
så hör kodade jag
protected void FyllDropList()
{
DataSet ds = LoadWebs();
ds.ReadXml(Server.MapPath("lookup.xml"));
dropdownlistRe.DataSource = ds;
dropdownlistRe.DataBind();
}
angående dropdownlistan
den skulle ju se ut så här
<asp:dropdownlist runat=server id=DropDownListen datatextfield="Texten/kolumn" datavaluefield="värdet/kolumn">
var bestämmer jag från vilken nod den ska skriva ut från xml filen? Alltså om jag bara vill ha ut namn från xml filen?
Funkar inte att få ut den i datagriden
NETwork Medlem sedan juni 2001 1 732 inlägg Du kan inte bara kasta in ett helt dataset i en dropdownlista om den innehåller en massa olika data. Vet inte om det fungerar när du fyllt ditt dataset från en xml men om du vill definiera en vald kolumn i ett dataset som ska fylla dropdownlistan så gör man så här:
DroDownList.DataTextField = "Name";
detta ska skrivas i funktionen?
NETwork Medlem sedan juni 2001 1 732 inlägg Ja, innan du binder din dropdownlist.
funkar inte, min funktion ser ut så här:
protected void FyllDropList()
{
DataSet ds = LoadWebs();
ds.ReadXml(Server.MapPath("lookup.xml"));
dropdownlistRe.DataValueField = "Name";
dropdownlistRe.DataSource = ds;
dropdownlistRe.DataBind();
}
P P Medlem sedan jan. 2001 2 204 inlägg dropdownlistRe.DataValueField = "Name"; - value
dropdownlistRe.DataTextField = "Name"; - text
om det är det som är problemet?
D Dino Medlem sedan sep. 2001 1 914 inlägg Och datakällan först.
dropdownlistRe.DataSource = ds.tables[0]
dropdownlistRe.DataTextField = "Name"
dropdownlistRe.DataValueField = "Name"
dropdownlistRe.DataBind()
jag har nu denna funktionen
protected void FyllDropList()
{
DataSet ds = LoadWebs();
ds.ReadXml(Server.MapPath("lookup.xml"));
dropdownlistRe.DataSource = ds.Tables[0];
dropdownlistRe.DataTextField = "Name";
dropdownlistRe.DataValueField = "Name";
dropdownlistRe.DataBind();
}
Xml filen ser ut så här:
<?xml version="1.0" encoding="utf-8" ?>
<root>
<states>
<state val="NY" text="New York" />
<state val="CT" text="Connecticut" />
<state>
<val>NJ</val>
<text>New Jersey</text>
</state>
</states>
<countries>
<country>
<countryCode>USA</countryCode>
<countryText>United States</countryText>
</country>
<country countryCode="CA" countryText="Canada" />
</countries>
</root>
Hur ska jag nu skriva för att få en att funka i datagriden? Det händer inget