İzlenecek yol: radyo düğmelerini kullanarak belgedeki bir grafiği güncelleştiriliyor
Bu izlenecek yolda, kullanıcıların belgede grafik stillerini seçmesi için seçenek sunmak amacıyla, Microsoft Office Word belge düzeyi özelleştirmesinde radyo düğmesinin nasıl kullanıldığı anlatılır.
Uygulama alanı: Bu konudaki bilgiler Word 2013 ve Word 2010 uygulamalarının belge düzeyi projelerine yöneliktir. Daha fazla bilgi için bkz. Office Uygulamalarında Kullanılabilir Özellikler ve Proje Türü.
Bu örneklerde aşağıdaki görevler gösterilir:
Belge düzeyi projesinde tasarım zamanında Word belgesine grafik ekleme.
Radyo düğmesini, onları kullanıcı denetimine ekleyerek gruplama.
Bir seçenek seçildiğinde grafik stilini değiştirme.
Sonuçları tamamlanmış bir örnek olarak görmek için, Office Geliştirme Örnekleri ve İzlenecek Yollar'daki Word Denetim Örneklerine bakınız.
[!NOT]
Bilgisayarınızda, aşağıdaki yönergelerde yer alan Visual Studio kullanıcı arabirimi öğelerinden bazılarının adı veya konumu farklı gösterilebilir. Bu öğeleri bilgisayarınızdaki Visual Studio sürümü ve kullandığınız ayarlar belirler. Daha fazla bilgi için bkz: Visual Studio ayarları.
Önkoşullar
Bu örneği tamamlamak için aşağıdaki bileşenler gerekmektedir:
-
Microsoft Office geliştirici araçlarını içeren bir Visual Studio 2012 sürümü. Daha fazla bilgi için bkz: [Office Çözümeri Geliştirmek İçin Bilgisayarı Yapılandırma](bb398242\(v=vs.110\).md).
- Word 2013 veya Word 2010.
Projeyi Oluşturma
İlk adım Word Belge projesi oluşturmaktır.
Yeni bir proje oluşturmak için
My Chart Options adında bir Word Belge projesi oluşturun.Sihirbazda Create a new document'ı (Yeni belge oluştur) seçin.Daha fazla bilgi için bkz. Nasıl yapılır: Visual Studio Office projeler oluşturmak.
Visual Studio yeni Word belgesini tasarımcıda açar ve My Chart Options projesini Çözüm Gezgini'ne ekler.
Belgeye Grafik Ekleme
Grafik eklemek için
Visual Studio tasarımcısında bulunan Word belgesinde, Şerit'in üzerindeki Ekle sekmesini tıklatın.
Metin grubunda, Seçenekler Ekle açılan düğmesini tıklatın ve Nesne'yi tıklatın.
Nesne iletişim kutusu açılır.
Yeni Oluştur sekmesindeki Nesne türü listesinde, Microsoft Graph Grafiği'ni seçin ve Tamam'ı tıklatın.
Grafik, ekleme noktasından belgeye eklenir ve Veri Sayfası penceresi bazı varsayılan verilerle birlikte görünür.
Veri Sayfası penceresini, grafikteki varsayılan değerleri kabul etmek için kapatın ve odağı grafikten taşımak için belgenin içini tıklatın.
Grafiği sağ tıklattıktan sonra Nesne Biçimlendir'i tıklatın.
Nesneleri Biçimlendir iletişim kutusunun Düzen sekmesinde Kare'yi seçin ve Tamam'ı tıklayın.
Projeye Kullanıcı Denetimi Ekleme
Varsayılan olarak belgedeki radyo düğmesi birbirini dışlamaz.Onlara kullanıcı denetimi ekleyerek ve seçimi denetlemek için kod yazarak onları düzgünce çalıştırabilirsiniz.
Kullanıcı denetimi eklemek için
Çözüm Gezgini'nde My Chart Options projesini seçin.
Proje menüsünde, Yeni Öğe Ekle'yi tıklatın.
Yeni Öğe Ekle iletişim kutusunda, Kullanıcı Denetimi'ne tıklatın ve denetimi ChartOptions olarak adlandırın, sonra da Ekle'yi tıklatın.
Kullanıcı denetimine Windows Form denetimi eklemek için
Eğer kullanıcı denetimi tasarımcıda görünür değilse Çözüm Gezgini'ndeki ChartOptions'ı çift tıklatın.
Araç Kutusu'nun Ortak Denetimler sekmesinden, ilk Radyo Düğmesi denetimini kullanıcı denetimine sürükleyin ve aşağıdaki özellikleri değiştirin.
Özellik
Value
Ad
columnChart
Text
Sütun Grafiği
Kullanıcı denetimine ikinci Radyo Düğmesi denetimini ekleyin ve aşağıdaki özellikleri değiştirin.
Özellik
Value
Ad
barChart
Text
Çubuk Grafiği
Kullanıcı denetimine üçüncü Radyo Düğmesi denetimini ekleyin ve aşağıdaki özellikleri değiştirin.
Özellik
Value
Ad
lineChart
Text
Satır Grafiği
Kullanıcı denetimine dördüncü Radyo Düğmesi denetimini ekleyin ve aşağıdaki özellikleri değiştirin.
Özellik
Value
Ad
areaBlockChart
Text
Alan Engel Grafiği
Başvuruları Ekleme
Belgedeki kullanıcı denetiminden grafiğe erişmek için, projenizde Microsoft.Office.Interop.Graph derlemesine bir başvurunuzun olması lazım.
Microsoft.Office.Interop.Graph derlemesine bir başvuru eklemek için
Proje menüsünde, Başvuru Ekle'yi tıklatın.
Başvuru Ekle iletişim kutusu görüntülenir.
.NET sekmesindeki Microsoft.Office.Interop.Graph'ı seçin ve Tamam'ı tıklatın.Derlemenin 14.0.0.0 sürümünü seçin.
Bir Radyo Düğmesi Seçildiğinde Grafik Stilini Değiştirme
Düğmelerin doğru çalışması için, kullanıcı denetiminde ortak olay oluşturun, seçenek türünü ayarlamak için özellik ekleyin ve her radyo düğmesinin CheckedChanged olayı için bir yordam oluşturun.
Kullanıcı denetiminde bir olay ve özellik oluşturmak için
Çözüm Gezgini'nde, kullanıcı denetimini sağ tıklatın ve Kodu Göster'i tıklatın.
SelectionChanged olayı ve Selection özelliğini oluşturmak için ChartOptions sınıfına kod ekleyin.
Public Event SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Private selectedType As Microsoft.Office.Interop.Graph.XlChartType = _ Microsoft.Office.Interop.Graph.XlChartType.xlColumnClustered Public Property Selection() As Microsoft.Office.Interop.Graph.XlChartType Get Return Me.selectedType End Get Set(ByVal value As Microsoft.Office.Interop.Graph.XlChartType) Me.selectedType = value End Set End Property
public event EventHandler SelectionChanged; private Microsoft.Office.Interop.Graph.XlChartType selectedType = Microsoft.Office.Interop.Graph.XlChartType.xlColumnClustered; public Microsoft.Office.Interop.Graph.XlChartType Selection { get { return this.selectedType; } set { this.selectedType = value; } }
Radyo düğmelerinin CheckedChange olayını işlemek için
areaBlockChart radyo düğmesinin CheckedChanged olay işyecisindeki grafik türünü ayarlayın ve olayı oluşturun.
Private Sub areaBlockChart_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles areaBlockChart.CheckedChanged If (CType(sender, RadioButton).Checked) Then Me.selectedType = Microsoft.Office.Interop.Graph.XlChartType.xlAreaStacked RaiseEvent SelectionChanged(Me, EventArgs.Empty) End If End Sub
private void areaBlockChart_CheckedChanged(object sender, EventArgs e) { if (((RadioButton)sender).Checked) { this.selectedType = Microsoft.Office.Interop.Graph.XlChartType.xlAreaStacked; if (this.SelectionChanged != null) { this.SelectionChanged(this, EventArgs.Empty); } } }
barChart radyo düğmesinin CheckedChanged olay işyecisindeki grafik türünü ayarlayın.
Private Sub barChart_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles barChart.CheckedChanged If (CType(sender, RadioButton).Checked) Then Me.selectedType = Microsoft.Office.Interop.Graph.XlChartType.xlBarClustered RaiseEvent SelectionChanged(Me, EventArgs.Empty) End If End Sub
private void barChart_CheckedChanged(object sender, EventArgs e) { if (((RadioButton)sender).Checked) { this.selectedType = Microsoft.Office.Interop.Graph.XlChartType.xlBarClustered; if (this.SelectionChanged != null) { this.SelectionChanged(this, EventArgs.Empty); } } }
columnChart radyo düğmesinin CheckedChanged olay işyecisindeki grafik türünü ayarlayın.
Private Sub columnChart_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles columnChart.CheckedChanged If (CType(sender, RadioButton).Checked) Then Me.selectedType = Microsoft.Office.Interop.Graph.XlChartType.xlColumnClustered RaiseEvent SelectionChanged(Me, EventArgs.Empty) End If End Sub
private void columnChart_CheckedChanged(object sender, EventArgs e) { if (((RadioButton)sender).Checked) { this.selectedType = Microsoft.Office.Interop.Graph.XlChartType.xlColumnClustered; if (this.SelectionChanged != null) { this.SelectionChanged(this, EventArgs.Empty); } } }
lineChart radyo düğmesinin CheckedChanged olay işyecisindeki grafik türünü ayarlayın.
Private Sub lineChart_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles lineChart.CheckedChanged If (CType(sender, RadioButton).Checked) Then Me.selectedType = Microsoft.Office.Interop.Graph.XlChartType.xlLineMarkers RaiseEvent SelectionChanged(Me, EventArgs.Empty) End If End Sub
private void lineChart_CheckedChanged(object sender, EventArgs e) { if (((RadioButton)sender).Checked) { this.selectedType = Microsoft.Office.Interop.Graph.XlChartType.xlLineMarkers; if (this.SelectionChanged != null) { this.SelectionChanged(this, EventArgs.Empty); } } }
C#'ta radyo düğmeleri için olay işleyicileri eklemelisiniz.Bu kodu InitializeComponent'ı çağırdıktan sonra ChartOptions yapıcısına ekleyebilirsiniz.Olay işleyicisi oluşturma hakkında daha fazla bilgi için, bkz. Nasıl yapılır: olay işleyicileri Office projelerinin.
public ChartOptions() { InitializeComponent(); areaBlockChart.CheckedChanged += new EventHandler(areaBlockChart_CheckedChanged); barChart.CheckedChanged += new EventHandler(barChart_CheckedChanged); columnChart.CheckedChanged += new EventHandler(columnChart_CheckedChanged); lineChart.CheckedChanged += new EventHandler(lineChart_CheckedChanged); }
Belgeye Kullanıcı Denetimi Ekleme
Çözümü yapılandırdığınızda, yeni kullanıcı denetimi otomatik olarak Araç Kutusu'na eklenir.Denetimi belgenize Araç Kutusu'ndan sürükleyin.
Belgeye kullanıcı denetimi eklemek için
Yapı menüsünde, Çözümü Derle'yi tıklatın.
ChartOptions kullanıcı denetimi, Araç Kutusu'na eklenir.
Çözüm Gezgini'nde ThisDocumen.cs veya ThisDocument.vb'ye sağ tıklatın ve sonra Tasarımcıyı Göster'i tıklatın.
Araç Kutusu'ndan belgeye ChartOptions denetimini sürükleyin.
Projenize ChartOptions1 isimli yeni bir denetim eklenir.
Grafik Türünü Değiştirme
Kullanıcı denetimi tarafından seçilen seçeneğe göre grafik türünü değiştirmek için olay işleyicisi oluşturun.
Belgede görüntülenen grafik türünü değiştirmek için
Aşağıdaki olay işleyicisini ThisDocument sınıfına ekleyin.
Private Sub ChartOptions1_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles ChartOptions1.SelectionChanged Try Dim shape As Word.Shape = Me.Shapes.Item(1) ' Activate the shape. shape.Activate() Dim dataChart As Graph.Chart = CType(shape.OLEFormat.Object, Graph.Chart) dataChart.ChartType = Me.ChartOptions1.Selection ' Deactivate the shape. Me.ChartOptions1.Select() Catch ex As Exception MessageBox.Show(ex.Message) End Try End Sub
private void ChartOptions1_SelectionChanged(object sender, EventArgs e) { try { object index = 1; Word.Shape shape = this.Shapes.get_Item(ref index); // Activate the shape. shape.Activate(); Microsoft.Office.Interop.Graph.Chart dataChart = (Microsoft.Office.Interop.Graph.Chart)shape.OLEFormat.Object; dataChart.ChartType = this.ChartOptions1.Selection; // Deactivate the shape. this.ChartOptions1.Select(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
C#'ta, kullanıcı denetimi için Startup olayına bir olay işleyicisi eklemelisiniz.
this.ChartOptions1.SelectionChanged += new EventHandler(ChartOptions1_SelectionChanged);
Uygulamayı Test Etme
Radyo düğmesini seçtiğinizde grafik stilinin doğru bir şekilde güncellendiğinden emin olmak için belgenizi sınayabilirsiniz.
Belgenizi test etmek için
F5 tuşuna basarak projeyi çalıştırın.
Çeşitli radyo düğmeleri seçin.
Grafik stili değişikliğinin seçimle eşleştiğini doğrulayın.
Sonraki Adımlar
Sonradan gelebilecek bazı görevler:
Metin kutusunu doldurmak için düğme kullanma.Daha fazla bilgi için bkz. İzlenecek yol: Bir düğmesini kullanarak bir belge içinde metin kutusundaki metni görüntüleme.
Birleşik giriş kutusundan bir stil seçerek biçimendirmeyi değiştirme.Daha fazla bilgi için bkz. İzlenecek yol: Onay kutusu denetimleri kullanarak belgenin biçimlendirmesini değiştirme.
Ayrıca bkz.
Kavramlar
Word Kullanarak İzlenecek Yollar
Office Belgerindeki Windows Forms Denetimleri Sınırlamaları