Soru: serialPort'a birden fazla formdan erişme

Başlatan 1n4001, 25 Mayıs 2014, 02:51:47

1n4001

Merhabalar,
C#'ta Form1'de bulunan bir serialPort nesnesini Form2'den erişip kullanmak istiyorum nasıl yapabilirim?

MrDarK

İlk akla gelen şey ; aynı port ismi ile orada da seriport nesnesi koymak olurdu. Yani com1 'e ayarlıysa aynı şekilde diğerinide com1 olarak ayarlayacaksın.
Picproje Eğitim Gönüllüleri ~ MrDarK

volkii

Form1 üzerinden erişebilirsin bence. formlar arası fonksiyon erişimi ile aynıdır.

OG

VB de
formx = bulunduğu form
formx.nesne
formx.component
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Gökhan BEKEN

Aşağıdaki şekilde formlar arası global değişken kullanabilirsiniz.






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;

namespace csharp_ile_formlar_arasi_degisken
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        public static class genelDegiskenler  // program içinde heryerden erişebilmek için
        {
            public static string deneme = "picproje";
            
        }


        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            Form2 form = new Form2();
            form.Show();
        }
    }
}


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;

namespace csharp_ile_formlar_arasi_degisken
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        private void Form2_Load(object sender, EventArgs e)
        {
            label1.Text = Form1.genelDegiskenler.deneme;
        }
    }
}


Alıntı yapılan: MrDarK - 25 Mayıs 2014, 13:05:25
İlk akla gelen şey ; aynı port ismi ile orada da seriport nesnesi koymak olurdu. Yani com1 'e ayarlıysa aynı şekilde diğerinide com1 olarak ayarlayacaksın.
Benim bildiğim aynı port 2 farklı yerden okunamıyor. Mesela bir program ile bir com portunu açın, başka bir program aynı portu açamıyor. Ama aynı programlardaki formlar için emin değilim. En iyisi global değişken kullanmak.
Özel mesaj okumuyorum, lütfen göndermeyin.

MrDarK

Hocam senin program zaten bence cevabı vermiş :) Ben öylesine aklıma gelen şeyi söylemiştim ama bencede haklısın başka bir form tarafından açılmış port açılamaz tekrar doğru analiz
Picproje Eğitim Gönüllüleri ~ MrDarK