2012-12-07 245 views
1

我想从FileInfo添加项目到我的RadListBox,虽然我不能,我试图将文件转换成RadListBoxItem对象,但我得到的错误,它不能将字符串转换为radlistboxitem。有人可以点亮一下吗?谢谢。将项目添加到radlistbox

   DirectoryInfo dir = new DirectoryInfo(Path.GetFullPath(fp)); 
       lb_Files.Items.Clear(); 
       foreach (FileInfo file in dir.GetFiles()) 
       { 
        RadListBoxItem rlb = new RadListBoxItem(); 
        rlb = (RadListBoxItem)file.ToString(); 
        //radListBox 
        lb_Files.Items.Add(rlb.ToString()); 
       } 
+0

你在试图施放之前的代码是什么,你得到了什么错误? – MyCodeSucks

+0

lb_Files.Items.Add(file.ToString()); 当我试图直接绑定 – jpavlov

+0

时出现同样的错误,这是一个泛型,有一些无效的参数 – jpavlov

回答

2

试试这个

DirectoryInfo dir = new DirectoryInfo(Path.GetFullPath(fp)); 
lb_Files.Items.Clear(); 
foreach (FileInfo file in dir.GetFiles()) 
{ 
    lb_Files.Items.Add(new RadListBoxItem(file.ToString(), file.ToString())); 
} 
+0

谢谢。这照顾我的问题! – jpavlov

1

不,你不能投了String对象到RadListBoxItem,你必须使用字符串作为你的价值和Text属性创建RadListBoxItem

所以替换此:

RadListBoxItem rlb = new RadListBoxItem(); 
rlb = (RadListBoxItem)file.ToString(); 
//radListBox 
lb_Files.Items.Add(rlb.ToString()); 

有了这个:

lb_Files.Items.Add(new RadListBoxItem 
{ 
    Value = file.ToString(), 
    Text = file.ToString() 
});