Telerik Forums
UI for WPF Forum
0 answers
77 views

I have 2 Gridviews. Gridview B is nested inside GridView A. GridView B's ItemsSource comes from A.SelectedAttachments.

When I select a row in gridview B is there a way to programatically select GridViewA? I want to try to remove a row inside gridview B but how would I do that if I don't know the parent object it belongs to. 

 

My main goal is to be able to remove items from A.SelectedAttachments through a context menu of GridView B.

<DataTemplate x:Key="RowDetailTemplate">
    <telerik:RadGridView ItemsSource="{Binding SelectedAttachments}" Style="{StaticResource StdGrid}" >
        <telerik:RadGridView.Columns>
            <telerik:GridViewDataColumn Header="File" DataMemberBinding="{Binding FileName}"  />
            <telerik:GridViewDataColumn Header="Source Document" DataMemberBinding="{Binding Description}" EditTriggers="CellClick" IsReadOnly="False">
                <telerik:GridViewDataColumn.CellEditTemplate>
                    <DataTemplate>
                        <TextBox Text="{Binding Description}" Foreground="Gray" FontStyle="Italic" ></TextBox>
                    </DataTemplate>
                </telerik:GridViewDataColumn.CellEditTemplate>
                <telerik:GridViewDataColumn.CellTemplate>
                    <DataTemplate>
                        <TextBox Text="{Binding Description}" Foreground="Gray" FontStyle="Italic"></TextBox>
                    </DataTemplate>
                </telerik:GridViewDataColumn.CellTemplate>
            </telerik:GridViewDataColumn>
        </telerik:RadGridView.Columns>
    </telerik:RadGridView>
</DataTemplate>
band
Top achievements
Rank 1
 asked on 30 Jun 2017
5 answers
185 views

Hi,

We are using VQCV (Telerik 2016.2.503.40) to virtualize data to RadGridView from the server side to client, sometimes the grid doesn't refresh correctly the new added items (we had a workaround with an explicit call to the .Refresh() function in the end of the data loading routine), unfortunately this causes a freeze of the main Thread on Windows10.

This problem exists also in the telerik Demo panel (see the attached file).

01.Task.Factory.StartNew(() =>
02.{
03.    // Getting data from the server Side
04.    return result;
05. 
06.}).ContinueWith(finLazyLoading =>
07.{
08.   // DataVirtualisationRoutine...
09. 
10.    MyVQCV.VirtualItemCount = collection.ItemsCount;
11. 
12.    MyVQCV.Load(currentOffset, collection.Items);
13. 
14.    // If we call the refresh here it occurs the bug on Win10 (total freeze of the app).
15. 
16.}, TaskScheduler.FromCurrentSynchronizationContext()).ContinueWith(fixwin10 =>
17.{
18.    // This call causes an infinite loop... :(
19.
20.    MyVQCV.Refresh();
21. 
22.}, TaskScheduler.FromCurrentSynchronizationContext());

Can we have a fixe for this please or a working solution, we don't know how to do.

Thank you!

DenisCL
Top achievements
Rank 1
 answered on 30 Jun 2017
6 answers
577 views
I'm using the RadNumericUpDown in an application that requires several numeric inputs, about 20 on a single screen.
I like the UpDown ability (being able to click an arrow up and down), however I also need the user to be able to just enter in some numbers.  Well I've run into an issue, and I'm wondring if it's expected behavior or a bug.

if I highlight the text in the RadNumericUpDown box, and begin to type, lets say I type "200".  The first number gets intered ("2") but after that the cursor moves the the very far left, and the next number ("0") is entered to the left.  So what actually appears in the box is "002".  It appears to me as though you have to think in reverse to enter a number.  this seems counter intuitive.  Is this normal behavior or am i just missing a setting.  Here's the code I'm using

        <Style x:Key="Numbers" TargetType="{x:Type Tel:RadNumericUpDown}"
            <Setter Property="Width" Value="100"/> 
            <Setter Property="Margin" Value="10"/> 
            <Setter Property="Minimum" Value="0"/> 
            <Setter Property="FontSize" Value="12"/> 
        </Style> 
 
                    <Tel:RadNumericUpDown Grid.Row="0" Grid.Column="1" Style="{StaticResource Numbers}" 
                                      ValueFormat="Numeric" IsEditable="True"  
                                      Minimum="0" Maximum="100000"  
                                      Value="{Binding Path=MaxPumpOutRate.DisplayValue}"></Tel:RadNumericUpDown> 
 
 

in this example "MaxPumpOutRate" is my model object, and it has a property of type double named "DisplayValue"

Thanks for any help
Dinko | Tech Support Engineer
Telerik team
 answered on 30 Jun 2017
3 answers
117 views

Hi all

 

I've a Strange error... 

The pdfviewer don't show anything but if i print the document it exists !

 

The code work normaly before i don't understand.....

this is the XAML code

<Window x:Class="TestPdfViewer.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:UC="clr-namespace:Angdm.Framework.UI.UserControls;assembly=Angdm.Framework.UI"
        xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
        xmlns:local="clr-namespace:TestPdfViewer"
        mc:Ignorable="d"
        Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded">
    <Grid >
        <telerik:RadPdfViewer x:Name="pdfviewer"/>
        <!--<UC:UCPdfViewer x:Name="pdfviewer" BorderBrush="Red"/>-->
    </Grid>
</Window>

 

and the window loaded

 

   private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            using (FileStream fs = new FileStream("c:\\toto.pdf", FileMode.Open, FileAccess.Read))
            {
                byte[] byteread = new byte[fs.Length];
                int numBytesToRead = (int)fs.Length;
                int numBytesRead = 0;
                while (numBytesToRead > 0)
                {
                    int n = fs.Read(byteread, numBytesRead, numBytesToRead);

                    if (n == 0)
                        break;
                    numBytesRead += n;
                    numBytesToRead -= n;
                }
                numBytesToRead = byteread.Length;
               
                MemoryStream m = new MemoryStream(byteread);
                FormatProviderSettings settings = new FormatProviderSettings(ReadingMode.AllAtOnce);
                PdfFormatProvider provider = new PdfFormatProvider(m, settings);
                RadFixedDocument mdoc_data = provider.Import();
                this.pdfviewer.ClearDocument();
                this.pdfviewer.Document = mdoc_data;


            }
        }

Tanya
Telerik team
 answered on 30 Jun 2017
2 answers
231 views

Hi,

We're using RadDiagram in our application and are trying to use the connector tool to connect two shapes. The shapes have the default connector position ('Auto'), leaving an attachment in the centre of the shape, and we have gliding connectors enabled.

How does the connector attachment behaviour work in RadDiagram? Presumably there's some maximum distance from the target connector that the mouse must be before a connector's IsActive is set to true?

We're finding that, to successfully connect the shapes, we must click, drag and then hold directly over the connector to get the connection to attach properly. What we'd like is to be able to drag the connection anywhere on the shape and it automatically attach to the connector, so long as the connection is dropped on the shape.

Regards,

Ben

Ben
Top achievements
Rank 1
 answered on 29 Jun 2017
21 answers
1.4K+ views
Hi!

I recently upgraded to the Q2 version and I noticed a problem with the gridview, sometimes the last row is not completely visible including the row details. In the previous version it didn't happen.
Here's the code of the gridview
<telerik:RadGridView ItemsSource="{Binding PagedSource,ElementName=flightPager}" SelectionMode="Single" IsReadOnly="True"
                                         ScrollMode="RealTime" ScrollViewer.CanContentScroll="True" AutoGenerateColumns="False" 
                                         RowDetailsVisibilityMode="VisibleWhenSelected"
                                         HorizontalAlignment="Left" ScrollViewer.HorizontalScrollBarVisibility="Auto" x:Name="GridItinerary"
                                         ScrollViewer.VerticalScrollBarVisibility="Auto"  MaxHeight="600">

Here are two images that show the problem:
row details chopped

last row chopped

Thanks in advance.
Stefan
Telerik team
 answered on 29 Jun 2017
1 answer
209 views

I'm using a RadTileList to display a set of tiles from a collection stored in a viewmodel via the RadTileList's ItemSource and ItemTemplate properties. Additionally, I'm allowing multi-tile selection via SelectionMode="Extended".

In my Tile's ItemTemplate, I've defined 3 buttons that access functionality specific to the containing tile. 

I've noticed that clicking directly on any of the buttons contained in a tile toggles the selected state of the containing tile. I'd prefer for a click directly on a contained button to not change the Tile's selected state in any way. So far though, I haven't found any satisfactory way of accomplishing this.

Thanks for you input.

Dilyan Traykov
Telerik team
 answered on 29 Jun 2017
6 answers
153 views

Hello!

 

My application has a RadTabControl where each tab contains a RadDiagram with a GraphSource-Binding to a view model (TabViewModel).

At the moment I need to reference the RadDiagram in the TabViewModel for loading and saving reasons, because I found no way to save/load a graphsource to/from filesystem.

Having a reference to RadDiagram in my view model is not very MVVM like, make problems in our architecture and is not what we want.

In the end I want to have a single reference to a custom graph source in may TabViewModel which can be loaded by something like graphsource.Load(filepath);

The .Load on the graphsource should populate the graphsource with items and links from the selected file.

The same should be possible for the .Save method.

How could I achieve that?

Thanks.

Frank
Top achievements
Rank 1
 answered on 29 Jun 2017
6 answers
228 views

In MVVM, how to scroll to the previously selected GanttTask when I update whole ObservableCollection gantt tasks?

Thanks,

-Jacky

 

Dinko | Tech Support Engineer
Telerik team
 answered on 29 Jun 2017
2 answers
185 views

Hi to all,

I would avoid that user click single item of group.

Sequence to reproduce behaviour:

  1. Group more items
  2. Unselect group
  3. Click on group and group id selected
  4. Click again on single item (of group) and selected item is only item that I clicked.

I would that step no. 4 did not have any effect.

To highlight selected items, I have write code into SelectionChanged event, where I change background and foreground of selected item.

01.private void topRadDiagram_SelectionChanged(object sender, SelectionChangedEventArgs e)
02.{
03.    //Deselezione degli oggetti
04.    foreach (var item in e.RemovedItems)
05.    {
06.        if (item is RadDiagramShape deselectedItem)
07.        {
08.            deselectedItem.Background = ColorHelper.IMBALLO;
09.            deselectedItem.Foreground = ColorHelper.IMBALLO_TITLE;
10. 
11.            //Aggiorna il 3D
12.            var macchina = (ModelloCommerciale)deselectedItem.Tag;
13.            var macchina3D = macchina.Oggetto3D;
14.            macchina3D.Material = new DiffuseMaterial(ColorHelper.IMBALLO_TRASPARENTE);
15.            macchina3D.BackMaterial = new DiffuseMaterial(ColorHelper.IMBALLO_TRASPARENTE);
16.        }
17.    }
18. 
19.    //Selezione degli oggetti
20.    foreach (var item in e.AddedItems)
21.    {
22.        if (item is RadDiagramShape selectedItem)
23.        {
24.            selectedItem.Background = ColorHelper.IMBALLO_SELEZIONATO;
25.            selectedItem.Foreground = ColorHelper.IMBALLO_TITLE_SELEZIONATO;
26. 
27.            //Aggiorna il 3D
28.            var macchina = (ModelloCommerciale)selectedItem.Tag;
29.            var macchina3D = macchina.Oggetto3D;
30.            macchina3D.Material = new DiffuseMaterial(ColorHelper.IMBALLO_SELEZIONATO);
31.            macchina3D.BackMaterial = new DiffuseMaterial(ColorHelper.IMBALLO_SELEZIONATO);
32. 
33.            //Gesione trasparenza, è necessario per poter vedere trasparenti gli altri oggetti 3D
34.            //bisogna portare da index = 0 gli oggetti selezionati
35. 
36.            //Rimuovo l'oggetto 3D attuale
37.            this.oggettiModel3DGroup.Children.Remove(macchina3D);
38.            //Reinserisco l'oggetto 3D con index = 0
39.            this.oggettiModel3DGroup.Children.Insert(0, macchina3D);
40.        }
41.    }
Dario Concilio
Top achievements
Rank 2
 answered on 29 Jun 2017
Narrow your results
Selected tags
Tags
GridView
General Discussions
Chart
RichTextBox
Docking
ScheduleView
ChartView
TreeView
Diagram
Map
ComboBox
TreeListView
Window
RibbonView and RibbonWindow
PropertyGrid
DragAndDrop
TabControl
TileView
Carousel
DataForm
PDFViewer
MaskedInput (Numeric, DateTime, Text, Currency)
AutoCompleteBox
DatePicker
Buttons
ListBox
GanttView
PivotGrid
Spreadsheet
Gauges
NumericUpDown
PanelBar
DateTimePicker
DataFilter
Menu
ContextMenu
TimeLine
Calendar
Installer and Visual Studio Extensions
ImageEditor
BusyIndicator
Slider
Expander
TileList
PersistenceFramework
DataPager
Styling
TimeBar
OutlookBar
TransitionControl
Book
FileDialogs
ToolBar
ColorPicker
TimePicker
SyntaxEditor
MultiColumnComboBox
VirtualGrid
Wizard
ExpressionEditor
NavigationView (Hamburger Menu)
DesktopAlert
WatermarkTextBox
BarCode
SpellChecker
DataServiceDataSource
EntityFrameworkDataSource
RadialMenu
ChartView3D
Data Virtualization
BreadCrumb
ProgressBar
Sparkline
LayoutControl
TabbedWindow
ToolTip
CloudUpload
ColorEditor
TreeMap and PivotMap
EntityFrameworkCoreDataSource (.Net Core)
HeatMap
Chat (Conversational UI)
VirtualizingWrapPanel
Calculator
NotifyIcon
TaskBoard
TimeSpanPicker
BulletGraph
WebCam
CardView
DataBar
Licensing
FilePathPicker
PasswordBox
Rating
SplashScreen
Accessibility
Callout
CollectionNavigator
Localization
AutoSuggestBox
HighlightTextBlock
Security
TouchManager
StepProgressBar
VirtualKeyboard
Badge
OfficeNavigationBar
ExpressionParser
CircularProgressBar
SvgImage
PipsPager
SlideView
AI Coding Assistant
+? more
Top users last month
Jay
Top achievements
Rank 3
Bronze
Iron
Iron
yw
Top achievements
Rank 2
Iron
Iron
Stefan
Top achievements
Rank 2
Iron
Iron
Iron
Kao Hung
Top achievements
Rank 1
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Jay
Top achievements
Rank 3
Bronze
Iron
Iron
yw
Top achievements
Rank 2
Iron
Iron
Stefan
Top achievements
Rank 2
Iron
Iron
Iron
Kao Hung
Top achievements
Rank 1
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?