silverlight绑定button...

春风十里耶耶耶 2012-04-28 02:43:20
效果:相当于.net中gridview嵌套LinkButton一样.. 只有一个LinkButton按钮,但是根绝绑定的内容,可能会创建多个不同的LinkButton,LinkButton只有一个click事件,在事件中可以取到LinkButton的id,name等...


也就是说把Button放到数据绑定控件中,根据数据源中数据不同,会有多个或一个button出现...

目前我只知道是这样的

<Button x:Name="button" Content="{Binding NAME}" Margin="5,116,270,108"/>


...全文
125 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
谢谢大家,搞定了... 帖个代码,备用...


<ListBox x:Name="mylist" Margin="5" Height="210" Width="270">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding NumDig}" Foreground="Red" Margin="5"></TextBlock>
<TextBlock Text="{Binding Title}" Margin="5"></TextBlock>
<Button Content="{Binding NAME}" Margin="5" Click="Button_Click"></Button>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>


public class ContentData
{
private string _name = "123";
public string NAME
{
get { return _name; }
set { _name = value; }
}
private int _numdig = 0;
private string _title = null;
public int NumDig
{
get { return _numdig; }
set { _numdig = value; }
}
public string Title
{
get { return _title; }
set { _title = value; }
}
}
//绑定事件

private void DataBind()
{
var cd = new List<ContentData>();
for (int i = 0; i < 5; i++)
{
cd.Add(new ContentData { NumDig = i, Title = "Dig" + i.ToString(),NAME="Button"+i.ToString() });
}
mylist.ItemsSource = cd;
}
岁月无情_1 2012-04-29
  • 打赏
  • 举报
回复
不清楚你具体是什么意思,“但是根绝绑定的内容,可能会创建多个不同的LinkButton”,这句话你是要比如在你说的gridview里面一行有个数不定的linkbutton还是说一行只有一个,但是绑定的linkbutton的文本不一样
1、如果是说绑定的linkbutton是个数不定的话,可能要复杂一点,用动态生成控件可以,目前我还不清楚嵌套绑定ItemTemplate是否可以,等我研究下再说
2、如果仅仅是文本不一样,使用ItemTemplate,1楼说的就可以了
  • 打赏
  • 举报
回复
这个做法和asp.net中很相似呀。
只不过Silverlight中叫DataGrid,而不是GridView
然后你建一个模板列,这个模板列中放linkbutton,绑定一些你想要的信息就可以了。
sundayX 2012-04-28
  • 打赏
  • 举报
回复
不太明白楼主的意思。是不是根据数据源来创建多个button?
这样的话,可以使用listbox,然后定义它的ItemTemplate,如下。这样就可以根据数据源data中的对象Name属性来创建button。

<ListBox ItemsSource="{Binding data}">
<ListBox.ItemTemplate>
<DataTemplate>
<Button Content="{Binding Name}" Click="Button_Click_1"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>

8,735

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧