Git Product home page Git Product logo

csdeskband's People

Contributors

dsafa avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

csdeskband's Issues

How to know when the DeskBand is shown or hidden in my code?

For example, I'm using some timers, connections, etc. to periodically gather information to show on the deskband. But this process is necessary only if the deskband is shown. It the user hides the deskband I don't need to run these information gathering. If the user enable the deskband again then I need to start that information gathering again.
So is there any events that I can use to determine if the status of the deskband has changed?

WinForms

Not so good documentation

The documentation could use a lot more work. Stuff like

  • better / more examples
  • common issues not documented
  • basic start to finish tutorial

Add more documentation

As it is nearing v1, it would be good to add more documentation on usage of the available features

Left berth by default

in the newest version :
Left berth by default how to right default?
image
Default Vertical Topping how to Vertical centering?

Problems installing

I've used the Sample.Win and Sample.Wpf project to test if it works. Installation went fine, but I cannot select it. Also tried it with a new GUID and Name.

Using Visual Studio 2017 and Windows 10 Version 1803 64-bit, tested with both Pro and Enterprise. Also tested with "Any CPU", "x86" and "x64" (last one gives an error that it is not a valid .NET executable).

  • Tested both through elevated Developer Command Prompt and a bat file run from the directory.
  • Tested both with Debug and Release mode.
  • Tested both with "regasm" and GAC methods.

Bat-file:

@setlocal enableextensions
@cd /d "%~dp0"
C:\Windows\Microsoft.NET\Framework\v4.0.30319\regasm.exe /tlb /codebase Sample.Win.dll
pause

Result:

Microsoft .NET Framework Assembly Registration Utility version 4.7.3056.0
for Microsoft .NET Framework version 4.7.3056.0
Copyright (C) Microsoft Corporation.  All rights reserved.

Succesfully registered deskband `Sample Winforms Deskband` - GUID: {5731fc61-8530-404c-86c1-86ccb8738d06}
Request to show deskband.
Types registered successfully

What can I do? Can we debug or test this, or are there any known issues?

Other deskbands like from Networx works fine.

Wpf deskband creates empty entry in toolbar menu

2018-01-18_21-04-15

When the wpf deskband is activated, it appears as a blank entry which allows it to be duplicated by selecting it again from the toolbars menu. Normally, the entry is checkmarked when it is activated (see the winforms sample in the above screenshot)

Investigate UWP

I have not worked with UWP before but it should be doable. Microsoft has done it with their new "My People" app in the fall creators update.
2017-12-28_20-57-25
inspect_2017-12-28_21-00-21

Taking a quick look, it is in fact a desk band so it can be something to investigate later.

[WPF] Using a Window as UIElement

I am trying to use a Window instead of a simple UserControl so I can take advantage of its Activated and Deactivated events. However the deskband does not show.

Steps to reproduce:

  1. Open the WPF sample project
  2. Create a new window Window1
  3. Change line 23 in Deskband.cs to:
    protected override UIElement UIElement => new Window1();

Alternatively, is there any other way to detect if the deskband (including all of its child windows) get deactivated?

Deskband not showing correctly for RTL languages

I received a bug report on a project of mine where I'm using CSDeskBand. It looks like right to left languages like Hebrew cause the deskband scaling to behave incorrectly. I tested it on my project and Audio Band as you can see in the video. Both of them use CSDeskBand.

fQdcCMOSd6

Edit: Only WPF is affected by this.

Toolbar still does not open

Hi
I finished programming the toolbar tools itself and now I made my first stop onto getting the tools in the taskbar.
But unfortunately the new toolbar is not visible (or available in the toolbars selection menru).
Neither my new one nor the sample toolbar :-(

Any clever advices?

my control is an UserControl
the following is my "bandcontrol" the handle the band visibility for the UserControl
`
using System;
using System.Drawing;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using CSDeskBand;

namespace acsMetersControl {
[ComVisible( true )]
[Guid( "BE39FC0E-C019-49D0-BEE2-384747456526" )]
[CSDeskBandRegistration( Name = "acsMetersDeskBand", ShowDeskBand = true )]
public class acsDeskBandControl : CSDeskBandWin {
private static Control ctrl;
protected override Control Control => ctrl; // Returns your main control

    public acsDeskBandControl() {
        Options.MinHorizontalSize = new Size( 100, 30 );
        ctrl = new acsMeterControl();
        ctrl.SizeChanged += Control_SizeChanged;
        
    }

    private void Control_SizeChanged( object sender, EventArgs e ) {
        Options.HorizontalSize = new DeskBandSize( Control.Width, Options.VerticalSize.Height );
    }
}

}
`

registering seems ok
RegAsm : warning RA0000 : Registering an unsigned assembly with /codebase can cause your assembly to interfere with other applications that may be installed on the same computer. The /codebase switch is intended to be used only with signed assemblies. Please give your assembly a strong name and re-register it. Succesfully registered deskbandacsMetersDeskBand- GUID: {be39fc0e-c019-49d0-bee2-384747456526} Request to show deskband. Types registered successfully

2021-01-22 : Just tried a release version and a strong signed version. Both seem to be registered, but none of them appears in the taskbar :(

.NET 5 Support

I was wondering if .NET 5 Support was on the horizon or if there's something that would block updating this library & it's dependencies?

New method for Wpf deskbands

Do some investigation on maybe using a dummy deskband and keeping a Wpf window on top of it. Then we can still use all the deskband features but not have to use an ElementHost to host the Wpf control.

what is the best practice for stop deskband

I have an application which is inserted to the toolbar and it works fine.
But I have notice that when I try to build again the code, it says that the process is used by other process. After investigation I see that Explorer.exe is still running my code even when I unmarked my toolbar, so I need to shutdown explorer.exe in order to free my resources.

My question is ; how to stop explorer to use my code properly ?

Merge projects

Maybe merge win and wpf into csdeskband to reduce the amount of assemblies

Old NuGet version

Please update nuget version, spent couple of hours trying to understand why the examples aren't working.

Anyone using this in WinForms successfully?

all examples I saw were WPF. Did anyone use this in a WinForms project?
#56 is my open issue for WinForms
If someone has a running example for WinForms would be very helpful.
Even the demo WinForms project is not working...

toolbar is not shown

Hi, great work!
I have some issues I would like to discuss with you.

  1. When I run the .bat file (and the process itself) I do see the new toolbar in the taskbar.
    When I mark it, I don't see the view. But when I mark another toolbar (like the legacy toolbar. such like Address or Links), I see the toolbar (reproduced in your example as well).

EDIT:
I see that is not really hidden but shrink, so I need to extend it by the mouse. Its default size is really tiny?

  1. Do you know if there is any automatic (script) way to mark the toolbar? maybe in registry?

  2. The actions is not working when I click at the toolbar.

  3. Sometimes, when I run the process, the explorer.exe locks my process so I can't run it again.

[WPF] UserControl doesn't fill the DeskBand

Hey,

I really like this project, especially its WPF-Example. When I set the MinWidth, I get DeskBand with the Size I need.

But there's a problem: The UserControl isn't correctly sized to the bounds of its parent. Is there a way to achieve this? I already tried to modify the CSDeskBand.cs, but that didn't do anything:

public IntPtr Handle
{
    get
    {
        if (_rootVisual.Child == null)
        {
            _rootVisual.Child = UIElement;
            _rootVisual.Child.ClipToBounds = true;
            _rootVisual.ClipToBounds = true;
        }

        return HwndSource.Handle;
    }
}

Do you have any other ideas?

Some problems with calling context menu

Thank the author for making this project, but I found some small problems in use.

  1. Right-click on taskbar tool image is invalid. Context menu can only be displayed by right-clicking in the blank or penetrated area.
  2. In the white taskbar of Windows10 (19H1), CSDeskBand.Wpf tools will have black jagged edges.

Adding Sqlite Database !

I want to add sqlite database . But when sqlite object is initialized there is no deskband appears on TaskBar and db.sqlite is also not created. Is there any way to store some data in sqlite using this Deskband.

In WPF mode HwndSource.SizeToContent needs to be set to SizeToContent.Manual without setting Width or Height to make it size to the parent, so that the UIElement assigned stretches to cover the whole Deskband.

Hello,
The latest version of this library has a small issue. In WPF mode, if you set a UIElement in the child class of CSDeskbandWpf, it will not stretch to the whole width of the deskband. Instead it will take the minimum width and the deskband will shrink to its size, leaving the rest of the deskband area empty.

To solve this issue, a small patch is needed to the CSDeskBandWpf class constructor. After creating HwndSource using HwndSourceParameters, assign the SizeToContent property on it to SizeToContent.Manual and it will behave the same as previous versions.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.