Why Microsoft.SharePoint.WebControls over System.Web.UI.WebControls? - sharepoint

I am building visual web parts for SharePoint 2010 Foundation, using ASP.NET 3.5 in Visual Studio 2010. For those who are new, these are like making a custom "normal" .net control that you can drop onto a SharePoint page (because SharePoint is built on .net anyway).
As I'm looking at various examples online to make an input form, I notice some SharePoint specific versions of web controls. Microsoft.SharePoint.WebControls generally inherit from System.Web.UI.WebControls so would generally include or implement their functionality.
What I have yet to see is a nice listing or description of the benefits of the various SharePoint specific versions of these controls. Why go to the effort of using these specialized versions?
One example I do know is the SharePoint GridView. I found that when used with a DataSource, it has the paging and sorting built-in. So that's nice.
Does anyone know of a listing of similar "benefits" to many of the other controls? I have yet to find a nice one.

In general, you should use the SharePoint controls vs. .NET since a) they include some additional features (as you know the GridView already but more importantly, b) they are 'SharePoint Aware', thus security trimming and such things are taken care of. After all, these are the same controls used by the SharePoint UI so best to stay in line.
In all cases the SharePoint controls are hybrids of the System.Web.UI namespace. The only way you would concern yourself with using the 'raw' .NET controls would be for compatibility outside of SharePoint.

Related

How to develop a custom control for Infopath 2010 browser forms

I have a requirement to develop a custom control for use in InfoPath 2010 web browser forms, I've looked in all the usual sources (MSDN, InfoPathDevelopers Centre, SO etc.) but I haven't been able to find any reference or tutorials on how to do this.
Most of the documentation I have been able to find has been InfoPath 2007 specific and uses Active X for custom controls, a practice which is no longer supported.
In this particular case, the requirement is to add Captcha to whichever forms require it, but I'm expecting similar requests in the future.
Does anyone know of any resources for InfoPath 2010 custom control development, or even if this is supported?
Many thanks
Tim
As far as I can make out this feature is no longer supported, it was previously possible using Active X (so not usable outside of IE) but now that support has been discontinued.

Getting Started With SharePoint and InfoPath 2010

I am a .Net developer and I need to get started with SharePoint 2010 and InfoPath 2010 for a new project.
I believe I don't want too much SharePoint just the basic configuration and how to host an InfoPath form there. For InfoPath I need to know how to design forms and program it using VS2010.
I appreciate if you can provide me with some links/books to get started with SharePoint and InfoPath (with more emphasis on InfoPath development).
Edit
I really need some personalized advice instead of an entire website to surf. I will be totally lost like this.
As John alluded to - the path to learning really depends on your project needs.
My recommendation would be to learn InfoPath first. You don't need SharePoint and you don't even need Visual Studio to utilize the majority of InfoPath. You might be able to accomplish your goals right there without even delving into anything else.
If that is not enough start looking at the other things. You will need advanced programming (Visual Studio) if you are trying to customize the form experience for the user, adding functionality that is not available directly in InfoPath. Start looking down this path if you run into roadblocks with how you want your InfoPath form to work.
You will need SharePoint if you need a delivery mechanism, forms storage, tracking for the users. Start looking down this path if the forms start being complicated to manage on a file share (or if you need extra functionality like change tracking etc).
In general - start with Infopath and progress to the other things based on your needs. Programming is for the form (singular) experience, SharePoint is for the forms (plural) experience. Note also that they are not mutually exclusive - usually you end up needing both.

SharePoint 2007/2010

I'm a developer with 5 years of MCMS development and without a single know how with SharePoint.
I want to use the CMS capabilities of Sharepoint to migrate my applications but I DONT KNOW HOW TO START!!!!!!
In my actual projects i have a Visual Studio solution with all my code, my templates and my usercontrols...
I cannot see how can i do the same thing with Sharepoint :(
I want to customise my site like i did before, i want to create pages based on templates like i did before.
Anyone knows where i can find a walkthrough that explains me that?
Thank U All.
Unfortunately I think you are going to have to learn SharePoint. Even the WCM features are a big topic, and probably the best book is Andrew Connell's "SharePoint 2007 Web Content Management Development" - I don't think a 2010 version is available yet. The good news is that I think the MCMS product had a big influence on how the SharePoint WCM features were architected, so the underlying principles will be similar.
SharePoint 2010 has a Visual Web Part that will encapsulate a user control which might make the transition easier. Also see my answer to this question about converting an ASP.NET site to SharePoint which might have some relevant information.
Most of the information about converting from MCMS to SharePoint is for the 2007 version of the product. This two-part article on MSDN seems to be the best starting point.
I cannot see how can i do the same thing with Sharepoint :( I want to customise my site like i did before, i want to create pages based on templates like i did before.
Problem is, SharePoint is not MCMS, no matter how Microsoft tries to brand it as its successor.
Creating sites in SharePoint is almost opposite of how things we were done in MCMS were you build from the ground up using ASPX templates, user controls and placeholders. In SharePoint, you'll have to strip out most of the OOB stuff you don't need. The recommended approach to custom development is through web parts, CAML, and the SharePoint APIs.

Sharepoint 2010, Create Content based website

I did not use sharepoint before!!
Did you use Share-point 2010 before?, MS is saying that it can do a CMS website and without previous sharepoint version limitations, I am worry about that:-
1-
Can I create whatever I need in UI layer?
Any designer does not let me do things at the lowest level, (HTML, JQUERY, Javascript, CSS), will cause great troubles, does that apply on share-point?
2-
Is it really compatible with FF, and Chrome browsers, or I will find my self in deep troubles.
3-
Do u know anything that makes me not creating a CMS site like this http://www.editeur.org/ using sharepoint 2010 ?
Thanks
These websites use SharePoint:
http://sharepoint.microsoft.com/
http://www.cadbury.co.uk/
http://www.ferrari.com/
As you can see, it is possible to create highly customized layouts. However, you need to be aware that the learning curve is steep - you have never used SharePoint before, so there's a lot of learning ahead of you.
SharePoint 2010 supports non-IE browsers better than SharePoint 2007. This article contains a detailed analysis of this problem. There seems to be no known limitations related to content management, but you'll have to test it yourself to be sure.

What exactly can "Full Control" with SharePoint Designer accomplish?

I've been brought in as an intern to develop a SharePoint site. My team won't authorize the budget for Visual Studio and I don't have physical or remote access to the SharePoint server (running Windows SharePoint Services 3.0 a.k.a. WSS) on the back-end.
So what exactly can I do? I'm familiar with web technologies like PHP, JavaScript, HTML, and CSS. However, since the environment is SharePoint, I'm stumped trying to figure out how much control I have with Microsoft's definition of "Full Control".
If I can write some C#, I'm pretty sure that would be sufficient, but as I said no Visual Studio for me.
Any good ideas of features that people will use on a site built with the limited functionality of WSS and SharePoint Designer with "Full Control"? Can I somehow manipulate the default Web Parts into something cool or useful? Are there Ajax tricks I can do to accomplish something on the back-end?
Thanks in advance, I'm new to StackOverflow and eager to get involved here!
You can actually accomplish a LOT in SharePoint outside of a custom .NET solution. Some recommended learnings are:
JavaScript/jQuery - Know how to interface with a WebService using jQuery. SharePoint exposes a number of very useful WebServices in the /_vti_bin directory. Click here for a list: http://msdn.microsoft.com/en-us/library/ms479390.aspx. For example, I recently built a scrolling slide-show webpart entirely using jQuery and SharePoint's built-in webservices that pulls from a provided picture library.
DataForm Web Parts. Do some searching around on what these are and how they work in SharePoint. The tl;dr of these is that they're databound webparts that are bound to an SPDataSource and then rendered using XSLT to format the bound data. You can work with these in SharePoint designer, completely through the markup of your aspx page.
Do some searching on "customizing sharepoint list forms." The NewForm, DispForm and EditForm of any list or library can be customized to have behaviour or content added to them.
Those are just off the very top of my head...
EDIT:
I forgot to also mention http://www.muhimbi.com/Products/SharePoint-Infuser-%28Free%29.aspx
I've been meaning to check this out, since the concept is sound. I haven't tried it out myself but it will save you a lot of hassle when it comes to adding custom script that encompasses your entire site.

Resources