本文整理汇总了C#中Gtk.ListStore.Swap方法的典型用法代码示例。如果您正苦于以下问题:C# ListStore.Swap方法的具体用法?C# ListStore.Swap怎么用?C# ListStore.Swap使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Gtk.ListStore
的用法示例。
在下文中一共展示了ListStore.Swap方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: LaunchDialogue
//.........这里部分代码省略.........
//get selected iter and the replacement selection
TreeIter iter, newSelection;
if (!itemTree.Selection.GetSelected (out iter))
return;
newSelection = iter;
if (!IterPrev (itemStore, ref newSelection)) {
newSelection = iter;
if (!itemStore.IterNext (ref newSelection))
newSelection = TreeIter.Zero;
}
//new selection. Zeroing previousIter prevents trying to update name of deleted iter.
previousIter = TreeIter.Zero;
if (itemStore.IterIsValid (newSelection))
itemTree.Selection.SelectIter (newSelection);
//and the removal and index update
itemStore.Remove (ref iter);
UpdateIndices (itemStore);
};
upButton.Clicked += delegate {
TreeIter iter, prev;
if (!itemTree.Selection.GetSelected (out iter))
return;
//get previous iter
prev = iter;
if (!IterPrev (itemStore, ref prev))
return;
//swap the two
itemStore.Swap (iter, prev);
//swap indices too
object prevVal = itemStore.GetValue (prev, 1);
object iterVal = itemStore.GetValue (iter, 1);
itemStore.SetValue (prev, 1, iterVal);
itemStore.SetValue (iter, 1, prevVal);
};
downButton.Clicked += delegate {
TreeIter iter, next;
if (!itemTree.Selection.GetSelected (out iter))
return;
//get next iter
next = iter;
if (!itemStore.IterNext (ref next))
return;
//swap the two
itemStore.Swap (iter, next);
//swap indices too
object nextVal = itemStore.GetValue (next, 1);
object iterVal = itemStore.GetValue (iter, 1);
itemStore.SetValue (next, 1, iterVal);
itemStore.SetValue (iter, 1, nextVal);
};
itemTree.Selection.Changed += delegate {
TreeIter iter;
if (!itemTree.Selection.GetSelected (out iter)) {
removeButton.Sensitive = false;