You are not selecting the row, you are changing the current cell. The first cell (0,0) is already the current cell so nothing changes. When you change the current cell to (1,0) it happens that the row 1 gets selected because the default SelectionMode is FullRowSelect. To select a row use the Selected property of the row.
The id is the widget id + “_container”. You can see it in the browser use Developer Tools or F12. The id of the widget is ((IWisejComponent)widget1).Id.
However, you don’t need to do that because the devexpress extension already retrieves the jquery instance and saves it in the “widget” field. You can simply do this:
this.widget1.Eval(@"
const doc = new jsPDF();
window.DevExpress.pdfExporter.exportDataGrid({
jsPDFDocument: doc,
component: this.container
}).then(function() {
doc.save('Customers.pdf');
})");
Calling this.widget1.Eval() makes this the wisej widget context in javascript, so using this.widget returns the dx jquery instance.
It’s a bug. The workaround is easy: just set AllowUserToAddRows after filling and it works fine.
this.dataGridView1.Fill(bs);
this.dataGridView1.AllowUserToAddRows = true;
Hi Frank.
Got it.
The problem occurs when you set the property AllowUserToAddRows in design mode, before the Fill method, even if you have the method in code.
Try it …
Regards
Marcelo,
your first code snippet misses the setting of AllowUserToAddRows. Is that correct?
I have tried to reproduce in attached sample but it works fine.
Can you please give it a try?
Best regards
Frank
Resources in an assembly are not loaded automatically by the browser. They are just resources in an assembly.
Additionally, a bug in the C# compiler fails to include any embedded resource that ends with “.aa” when the 2 letter code is a recognized language. The compiler simply silently ignores the embedded resource without even logging it. I had to rename the embedded resources to _de, _it, etc. but it didn’t make it to Github, or I was overwritten… I have updated it again. Download it and recompile it from Github: https://github.com/iceteagroup/Wisej-Ext-DevExtreme
Third, we don’t download all the languages all the times. You have to set the language using Application.CurrentCulture in main or at any point before loading the first devex widget:
Application.CurrentCulture = CultureInfo.GetCultureInfo(“de”)
I have tried it with “it” and “de” and it works well. If it still gives you troubles attach a small runnable test case.
Hi again,
From DevExtreeme the say “this file (dx.messages.de.js) is not loaded on the client side”
How this is possible as dx.messages.de.js is included in Wisej.Web.Ext.DevExtreme.dll exactly as all.dll and all.dll is loaded.
Here is what they say:
Thank you for the clarification, Mariyan. I tested .dll you attached and see that this dictionary exists in Wisej.Web.Ext.DevExtreme However, then this file is not loaded on the client side:
I used DevExSample_dxGrid_exportToPDF for testing. As a result, no localization is applied. Please make sure that “dx.messages.de.js” is loaded to the client side part of your application as well.
By the way, maybe this sample could be useful for you.
Its about print from canvas or panel in a form
Regards
Attached the files. Put it simple:
private CheckedListBox cklb = new CheckedListBox();
private void Window1_Load(object sender, EventArgs e)
{
cklb.Items.Add(“text 1”);
cklb.Items.Add(“text 2”);
cklb.Items.Add(“a (much) longer text”);
cklb.Items.Add(“text 3”);
cklb.Items.Add(“text 4”);
cklb.Items.Add(“text 5”);
cklb.Items.Add(“text 6”);
cklb.Items.Add(“text 6”);
cbTest.DropDownControl = cklb;
}
See screenshot. The longer text is not shown completely. That is what I want to correct.
Hi Adrian
are you using some integration control like in this sample ?
Best regards
Hi Adrian
Can you please, send us a little sample for check exactly what do you want ?
Best regards
Hi Alaa,
yes before open this post I have download the last extension from github. The problem in Firefox is not fixed.
In Firefox ‘blur’ don’t work
Hi Kevin,
Thanks a lot !!
Regards
Hi Marco,
You can load status of Column using Visibile property of DatagridViewColumn and rise DatagridView event “ColumnStateChanged” for detect witch column change state.
Best,
Kevin (ITG)
Actually you can use the PictureBox as-is for multi page tiff, just override OnPaint in your derived class like this:
protected override void OnPaint(PaintEventArgs e)
{
this.Image.SelectActiveFrame(FrameDimension.Page, pageIndex);
base.OnPaint(e);
}
Now you can assign the Image property of pictureBox1.Image = Image.FromFile(“multi page tiff”).
Managing pageIndex and the page count is up to your class.
There isn’t any decent javascript tiff viewer around. But Wisej already supports viewing tiff in the PictureBox control. The best way to view a tiff is to draw it into an image. And all Wisej controls support the Paint event. The PictureBox already recognizes a tiff file and will convert it to a png and display it in the PictureBox using all the different SizeMode options.
But it doesn’t support the multi pages as a built-in functionality. However, it’s easy to add. You can create a derived PictureBox class, say TiffViewer. Attach to the Paint event. In the paint event use:
var g = e.Graphics; g.DrawImage(image, ... arguments depends on scaling);
Load the image object from the tiff file using Image.FromFile().
To read the number of pages in the tiff use:
var pageCount = image.GetFrameCount(FrameDimension.Page);
To display a specific page use this before g.DrawImage(image).
image.SelectActiveFrame(FrameDimension.Page, pageIndex);
HTH
Is it possible to capture the user credentials if the browser requests them so that they can be passed to the IReportServerCredentials interface?
Having explored Bearer Tokens for reporting services.
So aside from creating may own alternate log on form I was wondering whether it is possible to exploit what is already there?
Thanks for your help
Hi Onur,
It’s not possible to share the session in Wisej.
Wisej will always create a new session whether it was in a new browser, new browser tab or a new browser window.
What you can do is that you can share the authentication data specific to your application as a cookie or as an argument to the URL, and from there you can specify which view you want to load by passing the information in the URL.
Hope this helps with your issue.
Best regards,
Alaa
Yep, I did that… sorry.
Thank you Luca.
“incorrect format” means that you are mixing 32bit with 64bit. It’s a .NET loader exception.
