Ajax ToolKit Tab Container not rendering.

rckrch
rckrch used Ask the Experts™
on
Error with resources when using ajaxtabcontainer.  I have other ajaxcontrols on the page (calendar) that have not had a problem, but after adding the tab container to the page I get an error as follows.

Error Rendering Control - Table2 An unhandled exception has occurred.
Could not find any resources appropriate for the specified culture or the neutral culture. Make sure "AjaxControlToolkit.Properties.Resources.NET4.resources" was correctly embedded or linked into assembly "AjaxControlToolkit" at compile time, or that all the satellite assemblies required are loadable and fully signed.

Open in new window

Below is the code:
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true">
    </asp:ScriptManager> 
<asp:Table ID="Table2" runat="server" Height="70%" Width="100%">
                <asp:TableRow>
                <asp:TableCell ID="TableCell22" RowSpan="6" Width="20%" VerticalAlign="Top" HorizontalAlign="Center" 
                BorderStyle="Inset" BorderWidth="2" BorderColor="Gray" runat="server" Height="100%" CssClass="CellPadding">
<asp:Panel ID="Panel2" runat="server">
                    <ajaxToolkit:TabContainer ID="TabContainer1" runat="server" BackColor="Black" BorderStyle="None" 
                        Font-Names="Arial" Font-Size="10" ForeColor="#FFFFCC" AutoPostBack="True" TabStripPlacement="Bottom">
                        
                        <ajaxToolkit:TabPanel runat="server" ForeColor="#FFFFCC" Font-Size="10" 
                            Font-Names="Arial" BackColor="Black" BorderStyle="None" HeaderText="List" BorderColor="Black">
                            <ContentTemplate>
                                <asp:Table ID="DieDataTable" runat="server" CellPadding="0" CellSpacing="0" BackColor="Black" >
                                    <asp:TableRow runat="server" Width="100%">
                                        <asp:TableCell runat="server" HorizontalAlign="Center" VerticalAlign="Middle" Wrap="False" 
                                            Font-Names="Arial" Font-Size="8" Font-Bold="True" BackColor="#006666" BorderColor="Gray" 
                                            BorderStyle="Inset" BorderWidth="2" Width="100%" Height="10%">
                                            <asp:Label ID="DieHistLabel" runat="server" Text="Tool Change History" Font-Underline="True" 
                                                Width="58%" ForeColor="#FFFFCC" CssClass="TextBox1">

                                            </asp:Label>
                                        </asp:TableCell>
                                    </asp:TableRow>
                                </asp:Table>
<asp:Panel ID="Panel5" runat="server" Width="99%" BackColor="Black" > 
                        <asp:TextBox ID="DateTextBx" runat="server" Width="20%" 
                    BorderColor="#CCCCCC">
                    </asp:TextBox>
                    <ajaxToolkit:CalendarExtender ID="CalendarExtender1" runat="server" 
                        TargetControlID="DateTextBx" Format="MM/d/yyyy h:mm tt">
                    </ajaxToolkit:CalendarExtender>
                        <asp:Table ID="DieHistoryTable" runat="server" Width="100%"  
                            BorderColor="#666666" BorderStyle="Solid" BorderWidth="1">
                            
                            <asp:TableRow ID="TableRow8" runat="server">
                                <asp:TableCell ID="TableCell24" runat="server" Width="99%" >
                                    
                                    <asp:Panel ID="Panel4" runat="server"
                                        ScrollBars="Auto" CssClass="GrdPnlPstn" >
                                        
                                        
                                        <asp:GridView ID="DieGridView" runat="server" DataSourceID="SqlDataSource20"
                                            Font-Size="Small" ForeColor="#66CCFF" HeaderStyle-Wrap="False"
                                            ShowHeader="True" RowStyle-VerticalAlign="Top"
                                            RowStyle-HorizontalAlign="Left" RowStyle-BorderStyle="None"
                                            HeaderStyle-BorderWidth="1"
                                            HeaderStyle-BorderStyle="None" HeaderStyle-CssClass="Style1"
                                            HeaderStyle-ForeColor="#FFFFCC" 
                                            CellPadding="2" AutoGenerateColumns="False"
                                            EmptyDataText='Tool History Data Not Available <br/> Or <br/> No Changes Reported At This Time'
                                            RowStyle-Wrap="True" EnablePersistedSelection="True" DataKeyNames="Cur_Date"                                              
                                            SelectedRowStyle-BackColor="#CC3300" OnRowDataBound="DieGridView_RowDataBound" 
                                            OnSelectedIndexChanged="DieGridView_SelectedIndexChanged" AlternatingRowStyle-BackColor="#222222" 
                                            GridLines="Vertical" BorderStyle="None" HeaderStyle-BackColor="#222222">
                                            
                                            <Columns>      
                                                
                                                <asp:BoundField HeaderText="Date" DataField="Cur_Date"
                                                    DataFormatString="{0:MM/dd/yyyy h:mm}" HtmlEncode="false"
                                                    HeaderStyle-HorizontalAlign="Center" ControlStyle-Width="20%" ItemStyle-Width="20%"
                                                    ItemStyle-Wrap="False" />
                                                <asp:BoundField HeaderText="Description" DataField="Description"
                                                    HeaderStyle-HorizontalAlign="Center" ControlStyle-Width="80%" ItemStyle-Width="80%" />
                                            </Columns>
                                        </asp:GridView>
                                                
                                    </asp:Panel>
                                    
                                </asp:TableCell>
                            </asp:TableRow>
                            
                        </asp:Table>
                                
                    </asp:Panel>
</ContentTemplate>
                        </ajaxToolkit:TabPanel>
</ajaxToolkit:TabContainer>
                        
                    </asp:Panel>
</asp:TableCell>
                </asp:TableRow>
</asp:Table>

Open in new window


Can anyone help with this?

Thanks
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Chinmay PatelChief Technology Ninja
Distinguished Expert 2018

Commented:
Hi rckrch,

Can you check if all the necessary resource files are added / linked in the project?

Regards,
Chinmay.

Author

Commented:
How would I tell?  I have moved from using the tab container to using the Multiview object for this same purpose.

I have a number of other controls on the page and I clicked on the 'Generate Local Resource' and got a listing of the controls and the values associated.  What do I do with this?
Chinmay PatelChief Technology Ninja
Distinguished Expert 2018

Commented:
Hi rckrch,

Sorry for the delay, I tried using AJAX Toolkit and I found that apart from standard ScriptManager, you also need
   <asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
            </asp:ToolkitScriptManager>

Open in new window

to enable proper behavior of AJAX Toolkit controls. Please add these after your existing ScriptManager code and let me know if it works for you.

Regards,
Chinmay.
Ensure you’re charging the right price for your IT

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden using our free interactive tool and use it to determine the right price for your IT services. Start calculating Now!

Author

Commented:
Thanks for the reply Chinmay.  I tried this immediately after the script manager, but I get an error - Not a known element.

Thanks
Chinmay PatelChief Technology Ninja
Distinguished Expert 2018

Commented:
That means the required controls are not registered at all. Did you get this project / solution from someone else? or you are building it? If you are building it, please tell me how did you add AjaxToolkit to your solution?

Author

Commented:
I must have clicked the button by mistake while typing.  I did not mean to close this question - it is not resolved.

When I add an AjaxToolKit element to the solution I simply drag it from the tool box.  This is not created from someone else - just me.  I will say, however, that I did upgrade my visual studio from VS2010 to vs2019 - had a heck of a time getting everything to run.  

I think this may be the source of the problem - however, I have not idea how to resolve it.
Chinmay PatelChief Technology Ninja
Distinguished Expert 2018

Commented:
You can open the question don't worry. You can use request attention feature to get a mod to help you. I am replying from my cell otherwise I would do it myself.

Author

Commented:
Hi Chinmay,

Do you have any additional feedback?

Thanks,

Rick
Chinmay PatelChief Technology Ninja
Distinguished Expert 2018

Commented:
Hi Rick,

Can you take a screenshot OR list of files you see when you extract Ajaxtoolkit? I was also wondering if you would like to try removing the controls from Visual Studio (And your project's Bin Folders and then re-add them) that way if the missing files are part of the solution they will be added back to the project. If you do not want to take that risk, then start a new project and in that project try adding tab container and see if it exhibits the same behavior or not.

PS: I am wondering, any specific reason you are exploring AJAX Tookit? AJAX Toolkit is pretty obsolete now and if you are creating a new project I would not advise using it.

Regards,
Chinmay.

Author

Commented:
Add a new project within this solution, or generate a new solution - or both?

I did not realize AJAX toolkit is obsolete now.  What should I use to replace it?  FYI - no I am not tied to AJAX if there is a better method.

Thanks very much!!
Chief Technology Ninja
Distinguished Expert 2018
Commented:
Hi Rick,

As a challenge, you can continue doing R&D with AJAX (If I could spend some time I would too). I was suggesting to create a new solution and quickly add these controls without any bells and whistles to see if this is a generic behavior or project specific issue.

I did not realize AJAX toolkit is obsolete now.  What should I use to replace it?  FYI - no I am not tied to AJAX if there is a better method.

AJAXtoolkit has not been in active development for last 10 years now. And currently if you are implementing a new project or starting to learn I will strongly advice against using WebForms. You should look at Microsoft Asp.Net Core https://docs.microsoft.com/en-us/aspnet/core/?view=aspnetcore-2.2. Both MVC and RazorPages are a viable alternatives.

You will have to spend time and energy to match most of the functionality of the AJAXToolkit or you will have to find commercial alternatives.  AJAXToolkit has been replaced by bunch of other stuff (Bootstrap and, JQuery + JQuery UI on client side and on server side Web APIs). Initially, this effort that you have to make seems bit ridiculous but over the period of time it will be all worth it.

Regards,
Chinmay.

Author

Commented:
Thanks Chinmay,

I certainly don't want to be using outdated technology and will learn what I need to.

This is exactly the kind of feedback I have been looking for.  I will mark this as an answer, but first I need some more advice.  What would you recommend to develop applications in the business environment.  The handling and visualization of process data (high volume of data)?  Data input, retrieval (SQL Server), etc.  

Also, I have looked at the Asp.Net Core and it looks like all of it is in C#.  Even my VS options don't include visual studio for asp.net core.  It does with .NET Core.  How can I get this in vb.net and what is the difference in asp.net core and .NET core?

Thanks again for the reply.
Rick
Chinmay PatelChief Technology Ninja
Distinguished Expert 2018

Commented:
Hi Rick,

Thank you very much for the comment. Many users does not take it kindly when I suggest the upgrade/update (and .Net has been around for many years... initially I was against it - it was not ready for prime time. Now IT IS).

I would blindly recommend any new in-house app development should be done on .Net Core (Full Disclosure : I run an org which is a heavily Microsoft stack oriented) If your organization is already on Microsoft stack then the choices are pretty clear.

1. Desktop Development - WPF / UWP / Blazor (Still under consideration but a definitely strong contender)
2. Web Site / App / API Development - ASP.Net Core
3. Database - In House Microsoft SQL Server (For cost sensitive scenarios, we go with PostgreSQL - MySql is a big no no but can be used if that is what customer want). Cloud Database - Hands Down Azure SQL (We are exploring other options but currently our customers are very much aligned to SQL and Azure SQL)
4. Visualization - Heavily rely on PowerBI. Other than that we use various toolkits for .Net Core (SyncFusion, Infragistics, Telerik if PowerBI is not a good fi - generally that is not the case) and lastly ,we build them on our using ASP.Net Core/Web APis, Bootstrap, JavaScript.
5. Rapid App Development and Integration - PowerApps and Flow

And about VB.Net, yes. I want to clarify that (as you are open minded), even if Microsoft does not admit it, C# has been and will always be the first class citizen in .Net world. VB.net. You can read https://devblogs.microsoft.com/vbteam/visual-basic-in-net-core-3-0/. They were planning to launch VB.Net support with .Net Core 3.0 but I will believe it when I see it.

ASP.Net Core and .Net Core hmm :)... I hope you will not mind if I'd say same as the difference between ASP.Net and .Net? ASP.Net Core is a framework built on top of .Net Core that allows you to create web applications/APIs and more.

Regards,
Chinmay.

Author

Commented:
Thanks Chinmay,

Well there is a lot here that I just don't know.  I also don't know the integration or relationship between one tool language (or development environment) and another.  I will learn it however.  I noticed you don't have python mentioned here - is there a reason why?  Some of these are not free.

I guess I better start earnestly tackling C#.

Can you recommend a strategy for all that you have mentioned above?  Is there some incremental tutorial?  I know some of these are on W3 school web site.
Chinmay PatelChief Technology Ninja
Distinguished Expert 2018

Commented:
Hi Rick,

I don't think it is required to know all of them. I switch between tech as per the requirements. And not all of them are closely dependent on each other or related to each other. If you want to start learning, I would recommend you start here: https://docs.microsoft.com/en-us/learn/

Python is a very important language today but not for me directly. I am observing and utilizing Microsoft tools(Azure Services) when it comes to AI, other than that I am not a big fan of interpreted languages. Also, if you are coming from C# background, you would want to check: https://dotnet.microsoft.com/apps/machinelearning-ai/ml-dotnet

I will not be able to give a strategy before knowing your requirements. What kind of solutions you want to build? What role currently you play? How experienced you are? there are lot of questions but we can start with these three.

PS: W3Schools is good I refer to it when I know for sure what I am dealing with and I just need a little information or hint. Otherwise it is not good. No offense, but it seems you have been out of touch for a while. There are many and much better options available than W3Schools. Start with Microsoft Learn and rest we can figure out as you move forward.

All the best :)

Regards,
Chinmay.

Author

Commented:
Believe me, I'm not offended.  I have used ASP.net, vb.net, sql server pretty much exclusively.  What I have learned I have picked up on the fly on my own.  I sound out of touch because I am not really a programmer.  I have developed the solutions for the company I work for out of desire to develop something for handling all of the data we generated and visualizing that data with statistics.

I want to develop business software that will manage, visualize big data and migrate to predictive analytics with AI and machine learning.
Chinmay PatelChief Technology Ninja
Distinguished Expert 2018

Commented:
Hi Rick,

First, choose the area you will keep in focus (For me it is C# + Web Technologies). And that's a good combination ASP.Net + SQL + VB.Net. You will benefit by replacing VB.Net with C#.

I really like to help those who wants to do something on their own as I it is same with me. I keep getting into different areas of tech even if it is not needed.

and for your requirement to develop business software, visualize big data and the AI part. Let's go step by step, first you will handle the business software part which can be easily tackled by ASP.Net Core + C# + SQL. Big Data and AI+ML will come later - ideally you can get someone on-board with you to help with those 2 areas as they are miles apart from application development.

Regards,
Chinmay.

Author

Commented:
Thanks Chinmay,

I will proceed down this route.  I assume I can contact you from time to time when needing a little help?

Thanks Again!

Rick
Chinmay PatelChief Technology Ninja
Distinguished Expert 2018

Commented:
Sure Rick. I will help as much as I can. All the best.

Author

Commented:
Thanks

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial