C# Google Chrome Sekme Kontrollü Uygulama Yapımı

Merhaba c# öğrenene kodlamacı meslektaşlarım ve değerli konuklar. Bu makalemde sizlere Google Chrome kullanıcısı olarak Google Chrome tarzında bir sekme kontrolü yapımını göstereceğim. Bunun için makalede yazan şeyleri isterseniz takip edebilir, istersenizde makalenin sonunda bulunan videoyu izleyerek daha detaylı ayrıntıları görebilirsiniz. Yapılacakları sizlere adım adım anlatacağım. YouTube üzerinden bana abone olarak ve videoyu paylaşıp başka kişilerin izlemelerini sağlarsanız en büyük desteği vermiş olursunuz. Sizleri sıkmadan yormadan eğitim konuları oluşturuyorum. Umarım faydalı olur şimdiden kolay gelsin.
 
[adinserter block=”6″]
 
1. EasyTabs’ı yükleyin
EasyTabs kütüphanesini kullanmak için. EasyTabs, Chrome, Firefox, Trillian veya diğer web tarayıcıları gibi dahili bir tarayıcı kullanmanıza izin veren kullanımı kolay bir bileşendir. Kaynak kodu Github’da barındırılmaktadır. Visual Studio’da bunu yapmak için. Açılır listeden NuGet Paketlerini Yönet seçeneğini seçin:
 

Yönetici’de göz at sekmesine gidin ve EasyTabs paketini arayın:

 
EasyTabs by Luke Stratman adlı ilk paketi seçip projenize yerleştirin. Kurulum bittiğinde, kodunuzda EasyTabs ad alanını kullanabileceksiniz.
 
2. Basit bir Test Formu oluşturun
Sekmeler ilkeyi izler, oluşturulan her sekmenin yerel bir Formun örneği olacağından, Form1 olarak oluşturacağımız ilk, her oluşturulan Sekmenin içeriği olacaktır. AppContainer’ın oluşturulması sırasında bir sonraki adımda bu davranışı koşullu olarak değiştirebilirsiniz, ancak uygulamanızın hızlı çalışmasını sağlamak ve kütüphanenin nasıl çalıştığını anlamak için, tek ve basit bir Formla test etmenizi öneririz.
Bu örnekte Form1’imiz gerçekten basit ve birçok yerel bileşene sahip, ancak hiçbir şey yapmıyorlar:

Ancak özel olan kodun içinde. Formunuz, ParentForm’u döndüren ParentTabs özelliği için alıcıya sahip olmalı, bu nedenle özelliği formunuzun kaynak koduna eklediğinizden emin olun:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
// 1. Use Easy Tabs
using EasyTabs;
namespace Sandbox
{
    public partial class Form1 : Form
    {
        // 2. Important: Declare ParentTabs
        protected TitleBarTabs ParentTabs
        {
            get
            {
                return (ParentForm as TitleBarTabs);
            }
        }
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
        }
    }
}

Şimdi bu Form kabın bir sekmesinde gösterilebilir.
 
3. Bir AppContainer Formu oluşturun
Daha sonra, başvurunuzda TitleBarTabs Kullanıcı Arayüzünü genişleten yeni bir Form oluşturmanız gerekecektir. Bu form teorik olarak mevcut değildir ve tek başına görülemez, sadece uygulamanızın Giriş Noktası’na eklenecek sekmeler için bir sarmalayıcı olarak çalışır. Kod içeriği çok basit olacak ve basit bir şey gerektirecek, kullanıcının başka bir Form örneğiyle yeni bir Sekme oluşturmasını sağlayan bir yöntem, örneğimizde kullanıcının oluşturduğu her sekme önceki adımda oluşturulan Form1 örneği olacak Bu, başvurunuzu test etmek için, Form1’in içeriğini daha sonra belirtildiği gibi değiştirebilirsiniz.
Önemli
CS dosyasının açıkça bir Form örneği olması gerekir, basit bir C # sınıfı değil, aksi halde her Formda bulunan InitializeComponent yöntemi kullanılamaz ve kodunuz derlenmez. Bu, Solution Explorer alanındaki asistan kullanılarak formun oluşturulması sırasında belirlenebilir.

using System;
// Use EasyTabs
using EasyTabs;
namespace YOUR_APPLICATION_NAMESPACE
{
    public partial class AppContainer : TitleBarTabs
    {
        public AppContainer()
        {
            InitializeComponent();
            AeroPeekEnabled = true;
            TabRenderer = new ChromeTabRenderer(this);
        }
        // Handle the method CreateTab that allows the user to create a new Tab
        // on your app when clicking
        public override TitleBarTab CreateTab()
        {
            return new TitleBarTab(this)
            {
                // The content will be an instance of another Form
                // In our example, we will create a new instance of the Form1
                Content = new Form1
                {
                    Text = "New Tab"
                }
            };
        }
        // The rest of the events in your app here if you need to .....
    }
}

AppContainer Formunu Visual Studio tasarımcısında görmeye çalışırsanız, şunu göreceksiniz:

Bu hatayı alacaksınız, çünkü açıklandığı gibi, tasarımcı soyut olan bir şey çizmeye çalışıyor (formumuz FormBarTab’leri Form yerine uzatıyor), bu nedenle, yalnızca Formda görmeye çalışırsanız bir istisna atılacak Tasarımcı, aksi takdirde tamamen geçerlidir.
4. Uygulamanızın Giriş noktasını AppContainer olarak ayarlayın
Ana Program.cs dosyanızın kodunu, uygulamanızın giriş noktasını değiştirmeye devam edin. Burada uygulamanın (bir AppContainer örneği) varsayılan yerine TitleBarTabsApplicationContext kullanılarak başlatılması gerektiğini belirtmeniz gerekir. Burada, uygulamanızda oluşturulan ilk sekmenin içeriğinin ne olacağını, bunun basit bir öğreticiden bahsedildiği gibi, 2. adımda yaratılan Form1 örneğinin bir örneği olacağını göstereceksiniz:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using EasyTabs;
namespace YOUR_APPLICATION_NAMESPACE
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            AppContainer container = new AppContainer();
            // Add the initial Tab
            container.Tabs.Add(
                // Our First Tab created by default in the Application will have as content the Form1
                new TitleBarTab(container)
                {
                    Content = new Form1
                    {
                        Text = "New Tab"
                    }
                }
            );
            // Set initial tab the first one
            container.SelectedTabIndex = 0;
            // Create tabs and start application
            TitleBarTabsApplicationContext applicationContext = new TitleBarTabsApplicationContext();
            applicationContext.Start(container);
            Application.Run(applicationContext);
        }
    }
}
mertinko

Yazılım hakkında bildiklerini anlatan sıradan biri.

Recent Posts

Doğrulanmış WordPress Ping Listesi 2024 – Daha Hızlı İndex İçin WordPress Ping Servisleri

Doğrulanmış WordPress Ping Listesi 2024 – Daha Hızlı İndex İçin WordPress Ping Servisleri. Web sitenize…

1 ay ago

Windows 11 Kullanıcı Sayısı Düşmeye Başladı

İşletim sistemlerine ilişkin yapılan bir araştırma, Windows 11'in kullanıcı kaybetmekte olduğunu gözler önüne serdi. Yeni…

1 ay ago

Bir eve yetecek güneş paneli fiyatı ne kadar 2024?

İnsanların güneş enerjisi sistemleri ve santrallerle ilgili ilk aklına gelen bu sorunun cevabı ve tüm…

2 ay ago

Windows’ta sistem fonksiyonlarına hızlı erişim: Tanrı Modu (God Mode) nasıl çalışır?

“Tanrı Modu“ olarak adlandırılan bu özellik Windows sistem ayarlarına erişimi kolaylaştırır ve dolayısıyla çok daha…

2 ay ago

Epson L3210/L3250/L3251/L3260 Adjustment Programı

Epson L3210 / L3250 / L3251/ L3260 Yazıcılar da atık mürekkep pedi uyarısı genel de…

3 ay ago

Oyuncu Kulaklığı Önerisi 2023: Ses Kasmak İçin En İyi Gaming Kulaklık

Oyuncu kulaklığı hem ses kasma hemde takımındaki kişilerle iletişim kurma açısından özel olarak tasarlanan kulaklıklardır.…

6 ay ago