我使用的是Silverlight4页面和一个手风琴,我试图在每个手风琴项目中插入2个用户控件。
<toolkit:Accordion Name="accordion1">
<toolkit:AccordionItem Content="item 1" Header="A">
<local:AddRemoveControl x:Name="AddRemoveAgents" Margin="470,90,0,0"> </local:AddRemoveControl>
</toolkit:AccordionItem>
<toolkit:AccordionItem Content="item 2" Header="B - long header">
<local:DatesFilter x:Name="DatesFilter" Margin="475,200,0,0" Canvas.Top="76"> </local:DatesFilter>
</toolkit:AccordionItem>
</toolkit:Accordion>我收到以下错误消息:“属性内容设置了多次”
我该如何继续呢?
谢谢!
发布于 2011-03-16 19:33:50
手风琴中只能有一个内容项。
您需要做的是将您的控件包装在一个StackPanel中:
<toolkit:Accordion Name="accordion1">
<toolkit:AccordionItem Content="item 1" Header="A">
<StackPanel>
<local:AddRemoveControl x:Name="AddRemoveAgents" Margin="470,90,0,0"></local:AddRemoveControl>
<local:DatesFilter x:Name="DatesFilter" Margin="475,200,0,0" Canvas.Top="76"> </local:DatesFilter>
</StackPanel>
</toolkit:AccordionItem>
</toolkit:Accordion>发布于 2011-03-16 19:43:45
下面是我更新的代码:
<toolkit:Accordion Canvas.Left="480" Canvas.Top="104" Height="100" Name="accordion1" Width="300">
<toolkit:AccordionItem Content="item 1" Header="A">
<StackPanel>
<local:AddRemoveControl x:Name="AddRemoveAgents" Margin="470,90,0,0"></local:AddRemoveControl>
</StackPanel>
</toolkit:AccordionItem>
<toolkit:AccordionItem Content="item 2" Header="B - long header">
<StackPanel>
<local:DatesFilter x:Name="DatesFilter" Margin="475,200,0,0" Canvas.Top="76"></local:DatesFilter>
</StackPanel>
</toolkit:AccordionItem>
</toolkit:Accordion>发布于 2011-03-17 00:42:25
您正在定义内容两次。尝试从AccordionItem中删除内容标记,如下所示:
<toolkit:Accordion Canvas.Left="480" Canvas.Top="104" Height="100" Name="accordion1" Width="300">
<toolkit:AccordionItem Header="A">
<StackPanel>
<local:AddRemoveControl x:Name="AddRemoveAgents" Margin="470,90,0,0"></local:AddRemoveControl>
</StackPanel>
</toolkit:AccordionItem>
<toolkit:AccordionItem Header="B - long header">
<StackPanel>
<local:DatesFilter x:Name="DatesFilter" Margin="475,200,0,0" Canvas.Top="76"></local:DatesFilter>
</StackPanel>
</toolkit:AccordionItem>
</toolkit:Accordion>而且,按照你目前的方式,你最终会得到两个Accodion项目,每个项目都有一个控件。要将两个控件放在同一项中,您需要将第二个控件放入第一个stackpanel中。
<toolkit:Accordion Canvas.Left="480" Canvas.Top="104" Height="100" Name="accordion1" Width="300">
<toolkit:AccordionItem Header="A">
<StackPanel>
<local:AddRemoveControl x:Name="AddRemoveAgents" Margin="470,90,0,0">
</local:AddRemoveControl>
<local:DatesFilter x:Name="DatesFilter" Margin="475,200,0,0" Canvas.Top="76">
</local:DatesFilter>
</StackPanel>
</toolkit:AccordionItem>
https://stackoverflow.com/questions/5324581
复制相似问题