我正在尝试在单击时删除当前按下的按钮。我的代码如下:
self.tp.get_current_tab().content.children[0].remove_widget(self.btn)
self.tp.switch_to(self.tp.get_current_tab())
然而,self.btn会被覆盖。这是我创建按钮的地方:
self.btn = Button(text=self.btn.text, size_hint=(0.5,0.5), on_press=self.remove_filter_btn)
有没有办法将当前点击的按钮传递给remove_filter_btn?
感谢。
答案 0 :(得分:2)
private void TextBlock_Loaded(object sender, RoutedEventArgs e)
{
TextBlock textBlock = sender as TextBlock;
TreeViewItem tvi = FindParent<TreeViewItem>(textBlock);
ItemsControl parent = ItemsControl.ItemsControlFromItemContainer(tvi);
int index = 1;
while (parent != null && parent.GetType() == typeof(TreeViewItem))
{
index++;
parent = ItemsControl.ItemsControlFromItemContainer(parent);
}
textBlock.Margin = new Thickness(0, 0, 25 * index, 0);
}
应该已经接收了调用按钮的实例作为参数。
示例:强>
remove_filter_btn
<强>执行:强>