The CSHTML5 product is open-source, which means that if you need any particular feature, you can either:
This page details the latter option.
We call it "contributing to accelerate the development of CSHTML5" because you only pay half of the cost of development and we bear the remaining 50%, because obviously your contribution helps move the product forward.
Over the past few years, tens of features have been developed thanks to such financial contributions from users.
We can deliver some of the features as quickly as in 1 week.
To proceed, just contact us at sales@cshtml5.com (or click the round "Help" button located in the bottom-right corner of this page) and let us know which feature you are interested in. We will quickly reply with a proposal that includes the specifications, the cost, and the date of delivery.
The table below shows some cost estimations for missing features. It also provides workarounds when available. If your feature is not listed below, simply contact us at sales@cshtml5.com to get a quote.
Our core developers daily rate is 780 USD (or 580 GBP, 680 EUR, 980 CAD). As mentioned above, we then bear half the cost of development.
To estimate your final cost, please take the workload duration indicated below, multiply it by the daily rate above, and divide by two. Feel free to contact us at sales@cshtml5.com if you have any questions.
Limitations | Workload | Workaround (if easy) |
---|---|---|
DependencyObject.ClearValue | < 1 day | |
FrameworkElement.DataContextChanged | < 1 day | |
DataErrorsChangedEventArgs, INotifyDataErrorInfo.GetErrors(...), ValidationErrorEventArgs.Handled | 3 days | |
FocusManager.GetFocusedElement() | < 1 day | |
UserControl.Language | 5 days | |
ProgressBar | < 1 day | |
RadiusX, RadiusY | 3 days | Use a <Border> control instead of <Rectangle> and set its CornerRadius |
ImageBrush | 5 days | Use the <Image> control instead |
<EventTrigger RoutedEvent="ContentControl.Loaded"><BeginStoryboard> | 2 days | Register the Loaded event in C# and start the storyboard programmatically instead. |
ColorAnimationUsingKeyFrames | 5 days | Replace with "ColorAnimation" (without key frames) if the key frames are not critical to your animation. |
Page.Title | < 1 day | |
UIElement.Clip | 3 days | To clip the content of a control to the bounds of the control, set the "ClipToBounds" property to "True". For an arbitrary rectangular clip, place your control inside a <Border> that has the "ClipToBounds" property set to "True", and use positive or negative margins to position the clipping area. |
Control.ApplyTemplate | < 1 day | |
ListBox.ScrollIntoView | 2 days | |
PointAnimation | 2 days | |
Polygon | 2 days | |
Polyline | 2 days | |
Popup.Opened | < 1 day | |
SizeChangedEventArgs.PreviousSize | < 1 day | |
DataTemplate.LoadContent | < 1 day | |
TreeView | 3 days | |
HtmlDocument.Cookies | 2 days | Read the cookies with Interop.ExecuteJavaScript("document.cookie") instead |
IScrollProvider.HorizontalScrollPercent, VerticalScrollPercent, SetScrollPercent | < 1 day | |
ScrollViewer.ScrollableHeight and ViewportHeight | < 1 day | Read the .scrollHeight property of the DOM node via JS interop instead |
PrintDocument | 5 days | Use the PrintManager class instead |
InitParams | < 1 day | |
MouseWheel event | 2 days | |
TextBox.Select | < 1 day | Set the properties "TextBox.SelectionStart" and "TextBox.SelectionLength" (which are already supported) instead |
TextBox.SelectionChanged | < 1 day | |
TextBox.LineHeight | < 1 day | |
VisualTreeExtensions.GetBoundsRelativeTo | < 1 day | |
AutomationPeers | 4 days | |
DateTime.FromOADate and ToOADate | < 1 day | |
CollectionViewSource | 3 days | |
PlaneProjection | 2 days | |
NavigationContext.QueryString | < 1 day | Parse the QueryString by reading HtmlPage.Document.DocumentUri.ToString() instead |
ScrollViewer.ComputedVerticalScrollBarVisibility | < 1 day | |
BlockArrow | 2 days | |
ChangePropertyAction | < 1 day |
If your feature is not listed here, please contact us at sales@cshtml5.com for a quote.
Just contact us at sales@cshtml5.com (or click the round "Help" button located in the bottom-right corner of this page) and let us know which feature you are interested in.
We will quickly reply with a proposal that includes the specifications, the cost, and the date of delivery.