Diskuze: Dedenie v C#

C# .NET .NET (C# a Visual Basic) Dedenie v C# American English version English version

Avatar
asoft
Člen
Avatar
asoft:

Dobrý deň.
VS2008, C#, WinForms
Prechádzam z iného SW (VisualFoxPro) na C#. Logika viacerých vecí je podobná, ale niektorých nie.
Chcem Vás poprosiť o radu.
Vytvoril som Class DateTimePickerMy a v novom formulári som použil DateTimePickerMy a vznikol DateTimePickerMy1.
Keď niečo zmením v DateTimePickerMy nič mi nededí.
Napr. v DateTimePickerMy zmením formát dátumu na Short a v DateTimePickerMy1 zostáva Long.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace MojeNameSpace{

    public class DateTimePickerMy : DateTimePicker
    {
        private void InitializeComponent()
        {
            this.SuspendLayout();
            //
            // DateTimePickerMy
            //
            this.Format = System.Windows.Forms.DateTimePickerFormat.Short;
            this.ResumeLayout(false);
        }
    }
}
 
Odpovědět 24.11.2014 10:31
Avatar
Odpovídá na asoft
Andrej Farkaš:

Mám pocit, že nechápeš správne dedeniu a vytváraniu inštancií, ale môžem sa mýliť.
Ak som dobre pochopil, tak DateTimePickerMy1 je iba inštancia (objekt) triedy DateTimePickerMy.

Nahoru Odpovědět  +1 24.11.2014 10:37
Live. Love. Learn.
Avatar
asoft
Člen
Avatar
Odpovídá na Andrej Farkaš
asoft:

Áno. DateTimePickerMy1 je inštancia (objekt) triedy DateTimePickerMy.

 
Nahoru Odpovědět 24.11.2014 11:04
Avatar
asoft
Člen
Avatar
asoft:

Niečo nastavím v DateTimePickerMy, napr. Tag="1", alebo nejakú vlastnosť napr. DateTimePicker­Format na Short. (Nastavujem to v okne Properties).
Ako dosiahnem to, keď si stiahnem DateTimePickerMy z Tollboxu a vznikne DateTimePickerMy1, aby tam hodnoty z DateTimePickerMy boli.

 
Nahoru Odpovědět 24.11.2014 11:11
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na asoft
Jan Vargovský:

A voláš někde tu metodu InitializeCom­ponents? Rekl bych, že ne. Takže své inicializace si hoď do konstruktoru a pak se tam projeví.

 
Nahoru Odpovědět 24.11.2014 12:20
Avatar
asoft
Člen
Avatar
asoft:

Vo forme, kde je DateTimePickerMy1 mám tento kód:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Globalization;

namespace MojeNameSpace
{
    public partial class Vykony : MojeNameSpace.FormMy
    {
        public Vykony()
        {
            InitializeComponent();
        }
 
Nahoru Odpovědět 24.11.2014 13:13
Avatar
Odpovídá na asoft
sadlomaslox25:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace MojeNameSpace{

    public class DateTimePickerMy : DateTimePicker
    {
        public DateTimePickerMy()
        {
            InitializeComponent();
        }
        private void InitializeComponent()
        {
            this.SuspendLayout();
            //
            // DateTimePickerMy
            //
            this.Format = System.Windows.Forms.DateTimePickerFormat.Short;
            this.ResumeLayout(false);
        }
    }
}
 
Nahoru Odpovědět 24.11.2014 13:29
Avatar
asoft
Člen
Avatar
Odpovídá na sadlomaslox25
asoft:

Vďaka všetkým, už je to OK.

 
Nahoru Odpovědět 24.11.2014 13:47
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.