我正試圖在WPF選項卡中實現類似於IE9中的選項卡。 當您在最後的多個選項卡中打開時,它們會變得越來越小,並且還會在左側和右側顯示按鈕,以便在選項卡之間滾動。TabControl - 在選項卡之間滾動
任何幫助將非常appritiated。
我正試圖在WPF選項卡中實現類似於IE9中的選項卡。 當您在最後的多個選項卡中打開時,它們會變得越來越小,並且還會在左側和右側顯示按鈕,以便在選項卡之間滾動。TabControl - 在選項卡之間滾動
任何幫助將非常appritiated。
創建兩個主選項卡(主要選項卡在回答這兩個選項卡)這樣
<TabItem Header="«" Name="LeftTab"/>
<TabItem Header="»" Name="RightTab"/>
設置可見他們對隱伏。現在添加你想要的所有選項卡(用C#代碼或XAML),但不要忘了一套標記爲所有選項卡添加像下面
<TabItem Header="new" Name="tiNew" Tag="1"/>
<TabItem Header="edit" Name="tiEdit" Tag="2"/>
...
現在,當標籤數去比平常更多,你不能全部顯示在第1頁下做:
1.更改兩大標籤的可見..
bool is_Left_Right_tabVisible = false;
if (tabControl1.Items.Count > 8)
{
LeftTab.Visibility = System.Windows.Visibility.Visible;
RightTab.Visibility = System.Windows.Visibility.Visible;
is_Left_Right_tabVisible = true;
}
else
{
LeftTab.Visibility = System.Windows.Visibility.Hidden;
RightTab.Visibility = System.Windows.Visibility.Hidden;
is_Left_Right_tabVisible = false;
}
2.hidden所有額外的標籤,只顯示其中一些(例如:顯示兩個主要選項卡,並顯示標籤與標籤1 -8)
3.如果隱藏在主選項卡用戶點擊(左或右標籤)一個標籤,並可見另一個標籤(例如:你有lefttab-1-2-3-4-righttab當用戶右鍵點擊隱藏NO 1和vsible 5號並注重5號)
private void RightTab_MouseUp(object sender, MouseButtonEventArgs e)
{
if (is_Left_Right_tabVisible)
{
TabItem ti = sender as TabItem;
if (ti.Name == "RightTab")
{
//find right tab must set to visible
int Showtabindex = 0;
var t1 = tabControl1.Items.OfType<TabItem>().Where(x => x.Visibility == System.Windows.Visibility.Hidden);
foreach (var item in t)
{
if (((int)item.Tag) > Showtabindex)
Showtabindex = (int)item.Tag;
}
//find left tab must go invisible
int Hiddentabindex = Showtabindex;
var t2 = tabControl1.Items.OfType<TabItem>().Where(x => x.Visibility == System.Windows.Visibility.Visible);
foreach (var item in t2)
{
if (((int)item.Tag) < Hiddentabindex)
Hiddentabindex = (int)item.Tag;
}
(tabControl1.Items[Hiddentabindex] as TabItem).Visibility = System.Windows.Visibility.Hidden;
(tabControl1.Items[Showtabindex] as TabItem).Visibility = System.Windows.Visibility.Visible;
//you can create drag and drop for tabs then user can change tab TAG
}
else if (ti.Name == "LeftTab")
{
//.....
}
}
}
我知道這是升技很難,但是當我創造了良好的用戶控件我感覺很好。 但不要忘記在這個用戶控件我們使用tabcontrol我們可以從第一個創建一個自定義選項卡控件,而不使用此tabcontrol。
,你還可以創建動畫的選項卡時,這些變化不透明度並移動動漫將是很好check this post
謝謝! 我還沒試過,但看起來這是我需要的。 – Erez
您應該至少有一個標籤控制已經實現。這個問題仍然是通用的... – 2012-05-06 06:54:27