Skip to content
This repository has been archived by the owner on May 1, 2024. It is now read-only.

[Enhancement] Calendar Control #848

Closed
2 tasks
Softtinn opened this issue Feb 6, 2021 · 9 comments
Closed
2 tasks

[Enhancement] Calendar Control #848

Softtinn opened this issue Feb 6, 2021 · 9 comments
Labels
feature-request A request for a new feature. needs-specifications Accepted feature/enhancement and needs specification.

Comments

@Softtinn
Copy link

Softtinn commented Feb 6, 2021

Summary

It would have been really cool with a Calendar control that supports selecting multiple dates (and/or date ranges). I think this control would have been a great addition to the toolkit.

I'm not sure about how to implement it, but maybe a grid could be used as a base to it?

Here's a couple of examples:
image
image

Who Will Do The Work?

  • I am willing to take this on myself
  • Just putting this out there for someone to pick up
@Softtinn Softtinn added feature-request A request for a new feature. needs-approval Feature request has been submitted but is awaiting final approval. Please do not implement before! labels Feb 6, 2021
@Cfun1
Copy link
Contributor

Cfun1 commented Feb 6, 2021

Could you please include the Intended Use Case section ? Selecting nonconsecutive dates (more than two) or selecting a period of time (either by 2 date or by multiple successive days)

@jfversluis jfversluis added needs-specifications Accepted feature/enhancement and needs specification. and removed needs-approval Feature request has been submitted but is awaiting final approval. Please do not implement before! labels Feb 8, 2021
@jfversluis
Copy link
Member

I'd love to have a more extensive calendar control for sure! But before anyone gets started on this I'd love to see a more detailed specification on how we would want to implement that.

@SkyeHoefling
Copy link
Contributor

I built a calendar control a long time ago that used 100% shared code. It was highly customizable where every day square was just another ContentView or DataTemplate (it has been a long time since I looked at it). I would be willing to contribute it to a branch as a starting point. It isn't fully featured as the focus was just the grid of days.

@Cfun1
Copy link
Contributor

Cfun1 commented Feb 8, 2021

@ahoefling "highly customizable" this must be nice, under the hood it is somehow using the native Pickers or no? (partially ?)

@ionixjunior
Copy link
Contributor

Hi guys! I am developing a calendar view component for Xamarin.Forms. It is still in development and at this moment I am working in the component layout.

I am customizing the layout using styles classes, so I believe that this will be easy to create many kinds of layout for the calendar.

What features does the calendar view have so far?

  • Navigate to previous and next months using buttons
  • Hightlight the current day
  • Visualize events of the day with a dot indicator
  • Select some day of the calendar to get the selected date to load some data in the app
  • Choose the starting day of the week (sunday, monday...)

The project is available here https://github.com/ionixjunior/Xalendar

@Luiz-Franco
Copy link

Hi! I think a good feature would be the ability to disable specific days based on a list of DateTime or DayOfWeek enum.

@SkyeHoefling
Copy link
Contributor

@ionixjunior I took a look at your Xalendar control and that looks much better than my control. Maybe you can share the specification for it so we can discuss what it would look like in the XCT?

@ionixjunior
Copy link
Contributor

@ahoefling Initially, I thought to develop a simple calendar view with the following features:

  • Show days of the current month
  • Highlight the current day
  • Highlight the selected day
  • Choose the start day of the week (Sunday, Monday, Tuesday, etc)
  • Add events to a calendar to see some indicator in the days that contains events
  • Navigate to previous and next month using buttons
  • Invoke an action to the app retrieve the first and last day of the month navigated (useful to load the events of the navigated month)
  • Easy way to change the style or customize the calendar layout

All features listed above are working.

What is not included at this time and I plan to develop?

  • Show a preview of the previous and next month days
  • Navigate between months using gestures
  • Select a month to start the calendar rendering

About the layout of the calendar, I am creating some themes based on styles. The component will have some built-in themes for user choice and will be possible for the user to create your own theme for the calendar. So, this way will be easier to customize the calendar setting styles for calendar elements, differently from other solutions that we have a lot of bindable properties to change colors, styles, layout dispositions, etc.

@jfversluis this is a new component that I and some people of the community are developing and it is not a problem for me to donate this codebase to XCT.

As soon as possible I will update the docs of the project to explain better how the calendar is working and how it can be customized.

@pictos
Copy link
Contributor

pictos commented Mar 31, 2021

Since we have a spec proposal I'll close this issue and we should move any further comment to #1135

@pictos pictos closed this as completed Mar 31, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
feature-request A request for a new feature. needs-specifications Accepted feature/enhancement and needs specification.
Projects
None yet
Development

No branches or pull requests

7 participants