asp.net列表框VS的WinForms列表框

问题描述:

下面的代码是的WinForms:asp.net列表框VS的WinForms列表框

public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void Form1_Load(object sender, EventArgs e) 
     { 
      listBox1.DataSource = Fruit.Get(); 
      listBox1.DisplayMember = "Name"; 
      listBox1.ValueMember = "ID"; 
     } 

     private void listBox1_Click(object sender, EventArgs e) 
     { 
      object li = listBox1.SelectedItem; 

      Fruit fr = (Fruit) li; 

      label1.Text = fr.Name; 
     } 
    } 

是否有可能使用相同的技术在asp.net?

如果不是,那么有什么选择?

不,在ASP.NET中不可能。

作为替代方案,您可以将水果物品存放在字典<串,水果>收集,你可以得到您所选择的水果那样:

// Assume that your datasource is Dictionary<string, Fruit> myFruits 
Fruit fr = myFruits[listBox1.SelectedValue]; 

我不认为你可以做到这一点准确这样的,因为我在的WinForms很生疏,但这里的如何我想尝试它在asp.net

1)在Page_PreRender您绑定列表框()

listBox1.DataSource = Fruit.Get();
listBox1.DataTextField = "Name";
listBox1.DataValueField = "ID";
listBox1.DataBind();

2)我不知道什么是相当于“点击”事件会是这样,但你可以挂接到SelectedIndexChanged事件像这样(按另一个按钮触发):

var li = listBox1.SelectedItem;
label1.Text = li.Text;

+0

好,我已经做到了。我只是在寻找更好的技术。即与对象一起工作。 – anonymous 2009-11-17 12:41:16

+0

与此同时,Canavar的技术非常好。它解决了很多问题。 – anonymous 2009-11-17 12:42:06