TreeviewDemo
public TreeView TreeView; 선언하여 사용
사용 예
TreeView.ItemDataBinding += OnItemDataBinding;
TreeView.SelectionChanged += OnSelectionChanged;
TreeView.ItemsRemoved += OnItemsRemoved;
TreeView.ItemExpanding += OnItemExpanding;
TreeView.ItemBeginDrag += OnItemBeginDrag;
TreeView.ItemDrop += OnItemDrop;
TreeView.ItemBeginDrop += OnItemBeginDrop;
TreeView.ItemEndDrag += OnItemEndDrag;
//이부분은 커스텀 한 부분
TreeView.ShowUI += OnItemUIClick;///20210415 우클릭 신규 추가 이벤트
//커스텀으로 만든 부분
private void OnItemUIClick(object sender, ShowUIArgs e)
{
Debug.Log("OnItemUIClick");
rightClick_UI.SetActive(true);
}
TreeView에 붙어있는 이벤트를 만들거나 붙이거나 해서 사용
Treeview의 구조는
namespace Battlehub.UIControls 상속받음
Treeview 클래스
public class TreeView : ItemsControl<TreeViewItemDataBindingArgs>
ItemsControl의 인터페이스를 상속
간단하게
EventHandler를 추가하기 위해
EventArgs를 상속받는 클래스를 하나 선언(ShowUIArgs)
public class ShowUIArgs : EventArgs
{
private object[] v;
private PointerEventData eventData;
public ShowUIArgs(object[] v, PointerEventData eventData)
{
this.v = v;
this.eventData = eventData;
}
}
EventHandler 하나 선언
public event EventHandler<ShowUIArgs> ShowUI;///20210415 우클릭 신규 추가 이벤트
EventHandler를 콜하는 함수 설정
private void OnItemShowUI(ItemContainer sender, PointerEventData eventData)
{
if (ShowUI != null)
{
Debug.Log("Show UI!!!");
ShowUI(this, new ShowUIArgs(new[] { sender.Item }, eventData));
}
}
이벤트에 추가하기
ItemContainer.PointerDown += OnItemShowUI; ///추가 !!
댓글 없음:
댓글 쓰기