Is there any way of removing a section of a website without altering the code?
For example, I create a webBrowser control in my Windows form and tell it to load stackoverflow.com. Would there be any way of removing the top 100 pixels from displaying?
You could write your own html page with an iframe in it, load the site (e.g. stackoverflow) in the iframe and set the css margin-top property for the iframe to "-100px"
The best I can come up with would be to have a panel overlap the top 100 pixels of the WebBrowser control.
Related
I'm making a winform application containing a WebBrowser control. I'm trying to connect to a Web page that contains ads, but it's affecting the loading speed of the page. The adblock plugin for Chrome blocks ads. So is there any way to add that plugin or any other way to achieve the same result?
The adblock plugin is just some js script with some browsers specific metadata on top. You can check the source code here: https://adblockplus.org/source
You can probably sort something out with this (like run the plugin's code after page load)
There are many applications out there that are displaying html content using XAML controls rather than displaying a web browser. Does anyone know if there is control used for this? If no control is available, what's the best way to do this?
I found this article but that seems to be overkill... Or is it?
http://thewp7dev.wordpress.com/2012/03/05/html-textblock/
I would like to keep the exact format of a web page (i.e. text, images, formatting, etc...) but I'd like if possible at all not use the web browser.
I have a pivot that requires 4 websites to be displayed but it would seem very heavy to create 4 web browser, not to mention I'd like to add different touch functionality that I'm struggling to do using the web browser.
I'd appreciate any feedback.
Thanks
There is no XAML controls for windows phone, except WebBrowser Control (WebView in WP8.1), which can display HTML as it is.
Your article describes exactly what you have to do, to display HTML in some other XAML controls (RichTextBox for example).
You have to parse HTML to XAML format. You can use thrid party components for this (HTML agility Pack http://htmlagilitypack.codeplex.com/) or implement your own parsing.
Also, I don't think, that combining WebBrowser control with Pivot (or Panorama) is a good idea, because it just consumes to much memory and there could be problems with scrolling and touch interaction.
The simple path I think is to reconsider your navigation model and use webbrowser control to display HTML. Maybe you can provide one WebBrowser and 4 links on top to switch between souces.
I would like to manually load HTML into a web browser control and make sure it does not create any internet traffic, so just show the content to the best of its abilities.
As specified in MSDN, WebBrowser.IsOffline is read-only.
Is there a way to set it (without using reflection hacks)?
Or do I have to resort to using a 3rd party control for this:
The most complete C# Webbrowser wrapper control
You can set WebBrowser.AllowNavigation to False.
Whether the control can navigate to another page after its initial page has been loaded.
Is possible to make the .Net Webbrowser control render form elements, like buttons, input text, with winform elements appearance? Using the visual styles of OS to look like an native Windows application not an page displayed in IE?
It is not possible configure or to supply custom rendering for buttons and input controls in IE - without CSS you get what browser decided to use as default.
It is possible to style buttons/input elements with CSS pretty much whatever way you want.
I am not entirely sure what you want to get. Possible you can render the entire form as it is in the broswer. WPF let you embed winform in the browser:
http://www.codeproject.com/Articles/31429/Embedding-a-NET-WinForms-Application-in-an-Interne
It is not possible as #Alexei Levenkov Informed.
But I recommend you to have look over this link where the web browser is created with C#.
I am using a picture box in my C# application, I want it to cover a certain portion of the web browser (the username part on youtube).
I have a 21.5" monitor and this is what it looks like to me:
But then this is what it looks like to one of my users with a 24" monitor:
As you can see the position of the picture box has moved up due to that persons screen size (I believe)
Is there a way to make sure that it will always be over that section of the web browser or moving it to that section of the web browser?
Thanks.
I am convinced your approach is wrong and would break anytime either for screen resolution or size changes, or for using the mouse-wheel to zoom in/out the page or whatever. it is just unreliable and patching this by overlapping another UI control like a picture box or a panel on top of what you want to hide is simply insecure and unreliable.
I think the tow real options you have are these:
You try to interpret the page content and remove from the page's DOM the information you do not want to show to the user (eventually HTML Agility Pack could help for this DOM parsing and manipulation but I am not sure if you can read what the WebBrowser control is showing and inject changes into it);
use the YouTube APIs and Tools - .NET APIs to load the videos and details you want to load and show but rendering this information with your specific UI elements in your windows forms application, without using a browser to show the normal YouTube site.
Probably the second option takes more work but is more secure, I am not sure 100%, as I said, if the first option is viable at all. You could search for HTML Agility Pack and web browser control to see if anybody has done this before already :)