Liebes Forum,
ich habe auf Codeprojekt-Seite eine Kalender-Componente gefunden welche ich gerne von C# zu vb.net konvertieren möchte.
Hier der link: codeproject.com/Articles/38699…Agenda-View-That-You-Will zum Kalender.
Leider bekomme ich dort keinen Support.
Folgende Umstellung bereitet mir echte Kopfschmerzen:
ISelectableElement:
ICalendarSelectableElement:
zu VB:
Hier bei VB kommt folgende Fehlermeldung:
"CalendarSelectableElement" muss "Function CompareTo(other As Windows.Forms.Calendar35.System.Windows.Forms.Calendar.ICalendarSelectableElement) As Integer" für die IComparable(Of ICalendarSelectableElement)-Schnittstelle implementieren.
Ja, das ist doch aber erfolgt. Ich habe auch schon anhand eines neu geschriebenen Beispiels die Interfacestruktur nachgebildet. Immer der gleiche Fehler. Ich stehe auf dem Schlauch.
Für die fragenden Mitstreiter warum ich nicht die Komponente wie sie ist einbinde: Ich möchte z.B. die Tagesfarben am Wochenende ändern, kann aber kein C# .
Vielen Dank.
Mike
ich habe auf Codeprojekt-Seite eine Kalender-Componente gefunden welche ich gerne von C# zu vb.net konvertieren möchte.
Hier der link: codeproject.com/Articles/38699…Agenda-View-That-You-Will zum Kalender.
Leider bekomme ich dort keinen Support.
Folgende Umstellung bereitet mir echte Kopfschmerzen:
ISelectableElement:
Quellcode
- using System;
- using System.Collections.Generic;
- using System.Text;
- using System.Drawing;
- namespace System.Windows.Forms.Calendar
- {
- /// <summary>
- /// Represents a clickable element of <see cref="MonthView"/> control
- /// </summary>
- public interface ISelectableElement
- {
- /// <summary>
- /// Gets the bounds of the element
- /// </summary>
- Rectangle Bounds { get; }
- /// <summary>
- /// Gets if the element is currently selected
- /// </summary>
- bool Selected { get; }
- }
- }
ICalendarSelectableElement:
Quellcode
- using System;
- using System.Collections.Generic;
- using System.Text;
- using System.Drawing;
- namespace System.Windows.Forms.Calendar
- {
- /// <summary>
- /// Interface implemented by every selectable element of the calendar
- /// </summary>
- public interface ICalendarSelectableElement
- : ISelectableElement, IComparable<ICalendarSelectableElement>
- {
- /// <summary>
- /// Gets the calendar this element belongs to
- /// </summary>
- Calendar Calendar { get; }
- /// <summary>
- /// Gets the calendar
- /// </summary>
- DateTime Date { get; }
- }
- }
Quellcode
- using System;
- using System.Collections.Generic;
- using System.Text;
- using System.Drawing;
- namespace System.Windows.Forms.Calendar
- {
- /// <summary>
- /// Implements a basic <see cref="ICalendarSelectableElement"/>
- /// </summary>
- public abstract class CalendarSelectableElement
- : ICalendarSelectableElement
- {
- /// <summary>
- /// Compares this element with other using date as comparer
- /// </summary>
- /// <param name="element"></param>
- /// <returns></returns>
- public virtual int CompareTo(ICalendarSelectableElement element)
- {
- return this.Date.CompareTo(element.Date);
- }
- ......
zu VB:
Quellcode
- Imports System.Collections.Generic
- Imports System.Text
- Imports System.Drawing
- Namespace System.Windows.Forms.Calendar
- ''' <summary>
- ''' Represents a clickable element of <see cref="MonthView"/> control
- ''' </summary>
- Public Interface ISelectableElement
- ''' <summary>
- ''' Gets the bounds of the element
- ''' </summary>
- ReadOnly Property Bounds() As Rectangle
- ''' <summary>
- ''' Gets if the element is currently selected
- ''' </summary>
- ReadOnly Property Selected() As Boolean
- End Interface
- End Namespace
Quellcode
- Imports System.Collections.Generic
- Imports System.Text
- Imports System.Drawing
- Namespace System.Windows.Forms.Calendar
- ''' <summary>
- ''' Interface implemented by every selectable element of the calendar
- ''' </summary>
- Public Interface ICalendarSelectableElement
- Inherits ISelectableElement
- Inherits IComparable(Of ICalendarSelectableElement)
- ''' <summary>
- ''' Gets the calendar this element belongs to
- ''' </summary>
- ReadOnly Property Calendar() As Calendar
- ''' <summary>
- ''' Gets the calendar
- ''' </summary>
- ReadOnly Property [Date]() As DateTime
- End Interface
- End Namespace
Quellcode
- Imports System.Collections.Generic
- Imports System.Text
- Imports System.Drawing
- Namespace System.Windows.Forms.Calendar
- ''' <summary>
- ''' Implements a basic <see cref="ICalendarSelectableElement"/>
- ''' </summary>
- Public MustInherit Class CalendarSelectableElement
- Implements ICalendarSelectableElement
- ''' <summary>
- ''' Compares this element with other using date as comparer
- ''' </summary>
- ''' <param name="element"></param>
- ''' <returns></returns>
- Public Function CompareTo(Other As ICalendarSelectableElement) As Integer
- Return Me.[Date].CompareTo(Other.[Date])
- End Function
- ........
Hier bei VB kommt folgende Fehlermeldung:
"CalendarSelectableElement" muss "Function CompareTo(other As Windows.Forms.Calendar35.System.Windows.Forms.Calendar.ICalendarSelectableElement) As Integer" für die IComparable(Of ICalendarSelectableElement)-Schnittstelle implementieren.
Ja, das ist doch aber erfolgt. Ich habe auch schon anhand eines neu geschriebenen Beispiels die Interfacestruktur nachgebildet. Immer der gleiche Fehler. Ich stehe auf dem Schlauch.
Für die fragenden Mitstreiter warum ich nicht die Komponente wie sie ist einbinde: Ich möchte z.B. die Tagesfarben am Wochenende ändern, kann aber kein C# .
Vielen Dank.
Mike